我是iOS 5的新手,并且遇到了代理和segues的问题。
我有一个主视图控制器,它会转换为SettingsViewController
。我使用以下代码使主VC成为Settings VC的代理:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([[segue identifier] isEqualToString:@"SETTINGS"]) {
[[segue destinationViewController] setDelegate:self];
}
}
SettingViewController
然后转到多个选项屏幕。我试图为这些选项屏幕设置SettingsViewController
代理,但我收到警告:setDelegate:
方法在两个地方找到(MainViewController
和{{1} })。
如何最好地解决此问题?谢谢!
P.S。我发现当我在编译器设置中启用严格选择器匹配警告时(根据教程书的建议)我才会收到此警告。丢开?解决问题?我不太确定......
答案 0 :(得分:0)
将视图控制器强制转换为已知类型就足够了:
[(SettingsViewController *)[segue destinationViewController] setDelegate:self];