iPhone SDK:委托方法未被调用-故障排除

4

如果委托方法没有被调用,那么需要检查哪些内容以确保 viewController 引用了委托?

2个回答

5

首先,你需要遵守头部协议:

@interface MyViewController : UIViewController <<b><em>YOUR DELEGATE'S PROTOCOL HERE</em></b>, <br>                                                           UITableViewDelegate>{

}

@end

这是最常见的错误。此外,请确保设置了代理。通常可以像这样设置:

myObject.delegate = self;

虽然有些类在初始化时进行:

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"MY APP"<br>                                                message:@"HELLO" <br>                                               delegate:<em><b>self</b></em> <br>                                      cancelButtonTitle:@"CLOSE" <br>                                      otherButtonTitles:nil];

谢谢您的输入。这就是我们要做的全部吗?我们没有其他地方需要声明它,对吧? - Parth Bhatt
通常不需要这样做。但正如@occulus所说,你可以经常直接从Interface Builder设置委托。 - Aurum Aquila

0
如果您期望调用委托方法时未能成功,那么可能是因为您实际上还没有连接委托。这可以在代码中或界面构建器中完成。例如,在界面构建器中,UITableView 可以将其 dataSource 和委托输出连接到目标,例如“文件所有者”。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接