小编use*_*779的帖子

在 iOS 9 中为 popoverPresentationController 使用 barButtonItem 时遇到问题?

我有一些使用新 UIAlertController 类的代码,这些代码在 iOS 8 中运行得很好。现在它在 iOS 9 中崩溃,并显示以下错误消息:

2015-07-23 10:38:27.499 MyApp[828:563509] -[UITabBarItem _viewForPresenting]: unrecognized selector sent to instance 0x157644960
2015-07-23 10:38:27.500 MyApp[828:563509] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UITabBarItem _viewForPresenting]: unrecognized selector sent to instance 0x157644960'
Run Code Online (Sandbox Code Playgroud)

问题似乎是使用 barButtonItem 字段来配置 popoverPresentationController,而不是仅仅使用 sourceView/sourceRect 东西。如果我切换到后者,那就没问题(但是当然,操作表不会从我希望它弹出的位置弹出)。到目前为止,谷歌搜索错误消息显示为空白。

这是代码。这是非常基本的,这里没有什么特别的:

    UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"What do you want to do?" message:nil preferredStyle:UIAlertControllerStyleActionSheet];
    [alertController addAction:[UIAlertAction actionWithTitle:@"Clear Call History" style:UIAlertActionStyleDestructive handler:^(UIAlertAction *action) {
        [self confirmClearCallHistory];
    }]];
    [alertController addAction:[UIAlertAction actionWithTitle:@"Cancel" style:UIAlertActionStyleDefault handler:^(UIAlertAction * action) {}]];
    [alertController …
Run Code Online (Sandbox Code Playgroud)

ios

5
推荐指数
1
解决办法
2050
查看次数

标签 统计

ios ×1