可以在UINavigationController和UIWebView中加载的网页之间进行通信吗?

时间:2011-11-01 15:25:15

标签: ios uiviewcontroller uiwebview uiwebviewdelegate

我是iOS开发的新手。我会尽力解释我的问题,如果你发现它很愚蠢,请原谅我。

我想知道是否可以通过单击UIWebView中的链接在UINavigationController中加载子视图。

进一步解释,假设UINavigationController有子视图,子视图有一个名为A的UIWebView,还有另一个名为B的子视图(尚未加载)。可以加载B(或执行任何子视图)其他本机Objective C事件)当用户点击UIWebView A内的链接时?

例如在iPhone的Instagram应用程序中,正如我所观察到的(我可能错了),在UINavigationControllers控制的视图中有UIWebViews。在Web视图中录制链接会加载新视图。怎么回事?可以设置UIWebView中加载的网页与父/超级UIView之间的通信吗?

如果我迷路了,请纠正我。到目前为止,我是iOS开发中的n00b。如果这有意义的话,还可以参考我的API或教程来做到这一点。提前谢谢。

1 个答案:

答案 0 :(得分:2)

如果您只想处理UIWebView中的点击链接,只需实现UIWebView的委托即可。它有webView:shouldStartLoadWithRequest:navigationType :,任何时候尝试在UIWebView中加载任何内容时都会调用它。在此方法的实现中,您可以阻止加载HTML内容并执行所需的任何obj-c代码。

希望有所帮助!