Iphone UIwebView委托方法不起作用为什么?

Iphone UIwebView委托方法不起作用为什么?,iphone,ios,objective-c,Iphone,Ios,Objective C,当我使用self.myWeview.delegate=self时,我的UIwebView实例无法加载URL。如果我将其设置为nil,那么委托方法不会激发,但是URL会被加载 这是我的密码: self.myWeview.delegate = nil; NSURL *url = [NSURL URLWithString:@"http://www.google.com"]; NSURLRequest *request = [NSURLRequest requestW

当我使用self.myWeview.delegate=self时,我的UIwebView实例无法加载URL。如果我将其设置为nil,那么委托方法不会激发,但是URL会被加载

这是我的密码:

      self.myWeview.delegate = nil;
      NSURL *url = [NSURL URLWithString:@"http://www.google.com"];
      NSURLRequest *request = [NSURLRequest requestWithURL:url];
      [myWebView loadRequest:request];
它工作正常,但不调用委托方法。下面是我分配委托方法的示例:

     NSURL *url = [NSURL URLWithString:@"http://www.google.com"]; 
     NSURLRequest request = [NSURLRequest requestWithURL:url];
     [myWebView loadRequest:request]; 
怎么了?

您需要设置:

self.myWeview.delegate = self;
在.h文件中:

@interface YourViewController : UIViewController<UIWebViewDelegate>
除非您没有将委托设置为自委托,否则将不会调用委托方法。

您需要在.h文件中实现协议UIWebViewDelegate 比如:@interface yourClass:inheritedClass并设置委托self.myWeview.delegate=self
;

有一点很重要,即使用uiwebview时,将其属性设置为“强”和“非原子”而不是“保留”

通常,我们只在appdelegate类中使用“strong”属性,而在其他viewcontroller类中使用retain属性


但是,对于viewcontroller类中的uiwebview,您还必须设置属性“strong”。

您从该委托方法返回了什么-BOOLwebView:uiwebview*webView shouldStartLoadWithRequest:NSURLRequest*请求导航类型:UIWebViewNavigationTypeNavigationType20分钟前您问了完全相同的问题。。。不要!同一用户@chandanwtb在Sobeace中不允许重复问题,因为:self.myWeview.delegate=nil;您已经在同一问题的上一个重复问题中得到了该问题的答案。首先尝试这些解决方案。不要再问同样的问题了,同样的问题。我在.h文件中这样做,但不起作用。我在.h文件中这样做,但不起作用。我在.h文件中这样做,但设置后不起作用。我的URL未加载,但称为URL未加载的方法与将委托设置为self无关。下载这个测试项目,我在其中检查了条件并查找FLViewController,然后在最底部的方法名称id loadUrlOnWebView中找到webView的代码。您可以运行此项目以查看url是否正在加载。我这样做了,但仍然无法正常工作。strong是关于arc的。。