Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/96.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios UIWebview应仅调用一次AstartLoadWithRequest委托方法(不一致)_Ios_Objective C_Uiwebview - Fatal编程技术网

Ios UIWebview应仅调用一次AstartLoadWithRequest委托方法(不一致)

Ios UIWebview应仅调用一次AstartLoadWithRequest委托方法(不一致),ios,objective-c,uiwebview,Ios,Objective C,Uiwebview,我正在将带有一些js代码的本地html模板加载到webview中。它大部分时间都有效。但是有时候,应该用request调用委托一次,以后就不会调用了。顺便说一下,我在iOS 9.1及更高版本中看到了这个问题 每当出现此问题时,如果我重新创建webview并加载相同的内容,那么它就可以正常工作。所以,我想知道为什么它第一次不起作用(不一致),但第二次起作用 我打电话来 [_webView setDelegate:nil]; //and [_webView stopLoading]; in de

我正在将带有一些js代码的本地html模板加载到webview中。它大部分时间都有效。但是有时候,
应该用request
调用委托一次,以后就不会调用了。顺便说一下,我在iOS 9.1及更高版本中看到了这个问题

每当出现此问题时,如果我重新创建webview并加载相同的内容,那么它就可以正常工作。所以,我想知道为什么它第一次不起作用(不一致),但第二次起作用

我打电话来

[_webView setDelegate:nil]; 
//and 
[_webView stopLoading]; in dealloc method.

如果有人能提出一些建议,那会很有帮助。

我想你的网络视图在某个地方失去了它的委托。所以它可能只是在代码中的某个地方用另一个重置它,或者只是用nil种子。通过查看您发布的代码,我可以预测这种情况-两个实例引用了此webView。一个实例应该删除,它调用dealloc方法-webView委托设置为nil,但另一个实例仍然使用相同的webView,但现在它有委托nil。由于代理为零,webView不会向他发送任何消息。这只是我的预测,但你还是应该检查你的代表是否为零,然后开始新的问题研究。祝你好运。

请检查@Avijit,添加“谢谢”与编辑应该做的相反。事实上,我们鼓励你从帖子中删除感谢,请参见嗨,谢谢。我已经检查了委托,并且在js执行期间没有将其设置为零。而且,我一次只使用一个实例。每次都会创建一个新的webview实例以供执行。您也可以简单地通过向shouldStartLoadWithRequest方法添加任何输出字符串来检查它-如果有任何内容将输出到控制台,而不是委托正确响应,那么您现在只有一个无响应的实例(响应的实例可能在其他地方,甚至失去引用)