DismissViewController UIButton 导致应用程序在 iPod touch 上崩溃
Posted
技术标签:
【中文标题】DismissViewController UIButton 导致应用程序在 iPod touch 上崩溃【英文标题】:DismissViewController UIButton causes app to crash on iPod touch 【发布时间】:2012-06-12 21:27:51 【问题描述】:DismissViewController
UIButton 导致我的应用程序在 iPod touch 上进行测试时崩溃。否则,它在 iPhone 上运行良好。 iPod 版本是 4.2.1。
我收到的信息是:
dismissViewControllerAnimated:completion:]: 无法识别的选择器发送到实例 0x153720'
-(void)dismissViewDidFinish:(UIViewController *)viewController
[self dismissViewControllerAnimated:YES completion:nil];
这是 modalviewcontroller h 文件:
@class Info;
@protocol InfoDelegate
-(void)dismissViewDidFinish:(UIViewController *)viewController;
@end
【问题讨论】:
【参考方案1】:您收到黄色警告
实例方法 -dismissViewController 未找到返回类型默认值 给身份证——
因为旧的不推荐使用的方法,dismissModalViewController 不需要 'completion:' 参数
ios6 中的新方法可以。所以你应该改写:
[self dismissViewControllerAnimated:YES completion:nil];
它会找到它
【讨论】:
【参考方案2】:方法“dismissViewController”定义在哪里?这不是一个框架方法。如果您使用了示例中的代码,请确保您定义了您想要的方法。它不是 UIViewController 上的方法。
如果您试图从模态视图控制器中关闭模态视图控制器,方法是:
[self dismissModalViewControllerAnimated:YES];
【讨论】:
它以黄色警告我 Instance method -dismissViewController not found 返回类型默认为 id dismissViewDidFinish方法定义在什么类? 什么是“自我”? dismissViewControllerAnimated 是在哪里定义的? 它在主视图控制器中定义,即呈现模态视图控制器。抱歉,它是在信息控制器中定义的 请发布方法“dismissViewControllerAnimated”的代码(及其所在的类名)或者,如果您尝试关闭模式视图控制器,请参阅我的更新答案。以上是关于DismissViewController UIButton 导致应用程序在 iPod touch 上崩溃的主要内容,如果未能解决你的问题,请参考以下文章
未调用dismissViewController 完成处理程序
将dismissViewController 与UIAlertController 一起使用
dismissViewController 或 popViewController 都不起作用
为 DismissViewController 添加通知而不进行子类化