iOS8 的 UIAlertController 标题始终为零

Posted

技术标签:

【中文标题】iOS8 的 UIAlertController 标题始终为零【英文标题】:UIAlertController title is always nil with iOS8 【发布时间】:2014-10-08 09:14:36 【问题描述】:

我从 ios8 和 Xcode 6.0.1 开始遇到问题,我的警报对话框的标题没有出现。所以我将我的 UIAlertView 更改为 UIAlertController 但我有同样的问题......

我的警报标题总是 nil 并且显示非常难看,因为我没有分隔线。

你知道我为什么会有这个吗?

    UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"title" message:@"message" preferredStyle:UIAlertControllerStyleAlert];

    [alert addAction:[UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) 
        [self dismissViewControllerAnimated:YES completion:nil];
    ]];

    [self presentViewController:alert animated:YES completion:nil];

但这就是结果

(lldb) po alert.title
nil
(lldb) po alert.message
message

谢谢。

【问题讨论】:

使用 Excat 相同的代码并在这里工作 @Bhumit 我在另一个干净的项目上进行了测试,它也可以正常工作,但我不知道在我的实际项目中可能与 UIAlertController 有什么冲突... 它在我身边工作 @Varsha 我也有一个新项目,但不是我当前的项目。我不知道为什么:/ 【参考方案1】:

感谢@Myaaoonn,我解决了我的问题!

UIAlertView title does not display

我刚刚从我的 ViewController 中删除了以下方法 类别类及其工作方法!

- (void)setTitle:(NSString *)title

   // My Code

【讨论】:

【参考方案2】:

尝试像这样调用 UIAlertView:

[[[UIAlertView alloc] initWithTitle:<#title#>
                            message:<#msg#>
                           delegate:nil
                  cancelButtonTitle:<#cancel button#>
                  otherButtonTitles:<#buttons#>,nil] show];

标题还没有显示吗?

【讨论】:

它仍然不能在 iOS8 上工作,但在 iOS7 上工作...... iOS8 结果:s9.postimg.org/y176nl6a7/alerti_OS8.png iOS7 结果:s28.postimg.org/c8n75e7kt/alerti_OS7.png

以上是关于iOS8 的 UIAlertController 标题始终为零的主要内容,如果未能解决你的问题,请参考以下文章

无法在 iOS8 上的 UIAlertController 中显示 UIPickerView

iOS8统一的系统提示控件——UIAlertController

如何处理: UIActionSheet deprecated (iOS8) X UIAlertController not supported (iOS7)

在UIAlertController中的操作下方显示空格

iOS 8.3 UIAlertController 在尝试添加文本字段时崩溃

UIAlertView 显示方法与新的 UIAlertController 对象等效吗?