Ara*_*and 5 objective-c selector
我在prepareForSegue方法中有这个代码
// Get destination view
UIViewController *viewController = [segue destinationViewController];
//See if it responds to a selector
if ([viewController respondsToSelector:@selector(setSomethingOrOther:)]) {
//if so call it with some data
[viewController setSomethingOrOther:something];
}
Run Code Online (Sandbox Code Playgroud)
上面的代码意味着我不必包含对segue的视图控制器的实际类的引用.我可以更松散地耦合两个视图控制器,并检查它是否响应其上设置的某些属性.
问题是当我这样做时,我得到以下编译时错误:
'UIViewController'没有可见的@interface声明选择器'setSomethingOrOther:'
这当然是真的.我知道我可以通过包含对视图的引用来解决它,但我更愿意将它保持分离.我该如何解决这个问题呢?
[viewController performSelector:@selector(setSomethingOrOther:)
withObject:something];
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3652 次 |
最近记录: |