【问题标题】:UIAlertController customizationUIAlertController 自定义
【发布时间】:2016-03-15 21:51:52
【问题描述】:

我正在尝试使用深色主题自定义我的 UIAlertController。
我的目标是这样的

我正在尝试不同的东西,包括我在这里找到的建议 https://stackoverflow.com/a/29122883/1817873,但由于某种原因,只有第一个按钮会着色,而取消按钮保持白色。

这是我的代码:

UIAlertController *alert = [UIAlertController alertControllerWithTitle:nil message:nil preferredStyle:UIAlertControllerStyleActionSheet];

UIAlertAction *deleteAction = [UIAlertAction actionWithTitle:@"Confirm" style:UIAlertActionStyleDefault handler:nil];
UIAlertAction *cancelAction = [UIAlertAction actionWithTitle:@"Cancel" style:UIAlertActionStyleCancel handler:nil];
[alert addAction:deleteAction];
[alert addAction:cancelAction];

UIView *firstView = alert.view.subviews.firstObject;
UIView *nextView = firstView.subviews.firstObject;
nextView.backgroundColor = [UIColor blackColor];

有什么想法吗?

【问题讨论】:

  • 尝试 UIAlertActionStyleDefault 为取消操作的样式
  • 小心 - 像这样自定义 UIAlertController 可能会被 App Store 拒绝。

标签: ios customization uialertcontroller


【解决方案1】:

有什么想法吗?

是的。放弃。警报控制器非常有限,您应该坚持它的作用。但它只是一个呈现的视图控制器,没有什么能阻止你制作你自己的呈现视图控制器,它的外观和行为就像一个警报,因为它是你的视图控制器,它是你的视图,你可以做任何你喜欢的事情。

【讨论】:

  • 你是对的。我最终做了我的自定义 UIView 并模拟了相同的行为。谢谢
  • 太棒了!您可能想在 github 上发布您的自定义操作表代码;它可能对其他人有用。我有自定义警报代码:github.com/mattneub/custom-alert-view-iOS7 但我的代码是用于警报,而不是操作表。
【解决方案2】:

如果您仍在为此苦苦挣扎,我有 a library 可能会有所帮助。它允许您创建自定义操作表。它有很多内置类型,也可以扩展和重新设置样式。

【讨论】:

  • 当您链接到某个项目时,请记得透露您与该项目的密切关系。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-09-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多