当我编写这行代码时,我没想到我的程序会大惊小怪:
[twitterFeed setDelegate:self];
twitterFeed是一个UIWebView设置,可以转到Twitter的移动网站,但这不是重点。我收到错误“发送'SocialView(这个类的名称)到不兼容类型'id'的参数。我不知道如何解决它。有没有办法快速做到这一点,没有重组我的代码太多了?
另外,值得注意的是SocialView是一个UIViewController,如果这对你很重要。
答案 0 :(得分:10)
您可以在<UIWebViewDelegate>
接口声明中添加SocialView
,看看是否修复了警告:
@interface SocialView : UIViewController <UIWebViewDelegate> {
...
}
答案 1 :(得分:9)
如果您使用静态方法(使用+),您可以使用演员手动获取警告:
[twitterFeed setDelegate:(id<UIWebViewDelegate>)self];
如果您使用的是实例方法(带 - ),则应遵循chown解决方案。
答案 2 :(得分:0)
您可能想要了解代理的使用方式。 How does a delegate work in objective-C? 确保您知道在使用它们时的操作。