0

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

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

    [[self parentViewController] dismissModalViewControllerAnimated:YES];

} else {

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

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

阿德里安

4

2 回答 2

6

你有没有尝试过?我在我的一个项目中成功使用了它。

[self dismissViewControllerAnimated:YES completion:nil];
于 2012-09-25T14:43:57.317 回答
1

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

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

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

一句忠告:视图自行关闭并不被认为是好的做法。您应该为您的模态视图控制器创建一个委托协议,并通过模态的委托来呈现视图控制器。

于 2012-09-25T16:33:53.813 回答