解雇modalView

时间:2012-09-25 13:04:04

标签: ios6

我遇到了dismissmodalview的一个问题。它显然在ios 6中折旧了。任何人都可以建议修复。我尝试了这段代码,但仍然提出警告。

if ([[self parentViewController] respondsToSelector:@selector(dismissModalViewControllerAnimated:)]){

    [[self parentViewController] dismissModalViewControllerAnimated:YES];

} else {

    [[self presentingViewController] dismissViewControllerAnimated:YES completion:nil];
}

任何人都可以提出任何建议。基本上我试图忽略我在视图控制器中使用的模态视图。

阿德里安

2 个答案:

答案 0 :(得分:6)

你尝试过吗?我在我的一个项目中成功使用了这个。

[self dismissViewControllerAnimated:YES completion:nil];

答案 1 :(得分:1)

您收到警告,因为在iOS 6中不推荐使用该选择器并且您使用它。如果您的目标是iOS 5及更高版本,则不应使用dismissModalViewControllerAnimated:

如果您真的需要使用它,可以这样调用performSelector:

if ([[self parentViewController] respondsToSelector:@selector(dismissModalViewControllerAnimated:)]){  
    [[self parentViewController] performSelector:@selector(dismissModalViewControllerAnimated:) withObject:@YES];
}

一条忠告:关闭自己并不是一种好的做法。您应该为模态视图控制器创建一个委托协议,并通过模态的委托创建视图控制器。