gpt4 book ai didi

ios - UIAlertController 色调颜色在突出显示时默认为蓝色

转载 作者:IT王子 更新时间:2023-10-29 07:46:54 25 4
gpt4 key购买 nike

我使用以下代码来呈现一个 UIAlertController 操作表,其中的项目文本为红色。我使用了 tint 属性来设置颜色。

UIAlertController *alertController = [UIAlertController
alertControllerWithTitle:nil
message:nil
preferredStyle:UIAlertControllerStyleActionSheet];
alertController.view.tintColor = [UIColor redColor];

文本颜色在突出显示或选择时似乎默认为蓝色。这正常吗?我该如何停止?

最佳答案

这是一个已知的错误,请参阅 https://openradar.appspot.com/22209332

要修复它,请在完成处理程序中重新应用色调颜色。这是我的 Swift 解决方案,您将能够轻松地针对 ObjC 进行调整:

alertController.view.tintColor = UIColor.redColor() // apply 1st time to prevent flicker from Blue to Red when displaying

navigationController?.presentViewController(alertController, animated: true, completion: {
// Bugfix: iOS9 - Tint not fully Applied without Reapplying
alertController.view.tintColor = UIColor.redColor()
})

一个注意事项:这并不能完全修复 Bug。在设备旋转时,您会注意到按钮重新着色为系统默认(= 蓝色)色调。

期待 iOS 9.1 修复它。

编辑 10/23/2015:仍未修复 iOS 9.1。使用几天前发布的 iOS 9.1 + Xcode 7.1 (7B91B) 重新测试。到目前为止,设置 .tintColor 不起作用,但是正如评论中所说,您可以设置整个应用程序的 tintColor,例如在 AppDelegate didFinishLaunchingWithOptions 中设置 window?.tintColor = UIColor.redColor()这也为 AlertController 按钮着色,但在某些情况下可能不适合,因为这种着色会应用于整个应用程序。

关于ios - UIAlertController 色调颜色在突出显示时默认为蓝色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32693369/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com