我在接口生成器中设置了一个UIWebView,并将委托设置为文件的所有者。我用NSLogs inside设置了webViewShouldStartLoad、webViewDidFinishLoad、webViewDidStartLoad和webViewDidFailLoadWithError,看看它们是否正常工作。webViewShouldStartLoad可以完美地工作,但其他三个只能在初始加载时工作。如果我单击一个链接转到另一个页面,其他三个页面都不起作用。所有的网页都加载得很好,但是除了workAnyone的webViewShouldStartLoad之外,我不能获得任何webview委托函数。你知道为什么会这样吗?
发布于 2011-01-21 04:19:25
文件的所有者是UIWebView的视图控制器吗?
确保它是正确的。
其次,我更喜欢在代码中设置委托。对于新手开发人员来说,我没有任何神秘之处。Interface Builder有时可能不清楚,特别是当您不确定代码中的链接是什么样子时。记住,Interface Builder使您不必编写某些代码;您在IB中所做的一切都可以在代码中完成。
在视图控制器中尝试此操作,通常是在viewDidLoad中:
self.webView.delegate = self;(你不必调用'self',我喜欢这样做是因为这个帖子之外的原因)
确保拥有UIWebView的View Controller在头文件中实现了UIWebViewDelegate。
另外,从dev站点更新:
“重要提示:不应在UIScrollView对象中嵌入UIWebView或UITableView对象。如果这样做,可能会导致意外行为,因为这两个对象的触摸事件可能会混淆并被错误地处理。”
你做过这件事吗?
https://stackoverflow.com/questions/4751680
复制相似问题