我的UIWebView有一个奇怪的问题,它不接受任何更改。
当我启动应用程序时,它会完美地加载URL,委托方法正在被触发,但是UIWebView之后不接受任何操作,比如隐藏它或更改它的URL。当我调用[webView loadRequest:urlRequest];
将当前URL更改为另一个URL时,会触发委托方法,但WebView会一直查看OLD页面,没有更改(只有指针显示几秒钟,然后是{{1}中的日志命令}和webViewDidStartLoad
和webViewDidFinishLoad
工作正常。)
以下是以下情况:
shouldStartLoadWithRequest
有谁能告诉我我错过了什么?
答案 0 :(得分:2)
初始请求加载到与未来不同的Web视图中。如果您查看代码,则可以[webView loadRequest:urlRequest];
然后向下几行,webView=[[UIWebView alloc]init];
将webView
变量设置为新的UIWebView实例,然后将其添加到视图中。此Web视图不可见,因为它的框架可能是CGRectZero
。委托方法正在触发,因为您已将新实例的委托设置为self,但再次看不到结果。
删除webView=[[UIWebView alloc]init];
,假设您已在其他地方初始化了网络视图,事情可能会按预期运行。
答案 1 :(得分:1)
在 loadRequest:urlRequest 之后,您创建了一个新的UIWebView,它覆盖了旧的webView,请将其删除。
答案 2 :(得分:0)
移动此行:
webView=[[UIWebView alloc]init];
在此之前:
[webView loadRequest:urlRequest];
在这种方法中:
viewDidLoad
答案 3 :(得分:0)
删除webView = [UIWebView alloc] init];应该工作