在“我想要的时候”调用UIWebViewDelegate方法

时间:2012-05-04 23:51:37

标签: javascript iphone cocoa-touch uiwebview

我正在使用webView:shouldStartLoadWithRequest:navigationType方法从JavaScript调用我的Objective-C代码,该代码正常工作。问题是,只有在Web视图重新加载时才会调用此方法。我希望能够“随时随地”发送消息。这可能吗?

具体来说,我想尽可能多地使用document.location = "myapp:" + "customerAdded:" + "YES";。我的代码仅在使用Google API V3绘制地图时执行。

是否可以重新加载“不可见”框架以调用委托方法?

2 个答案:

答案 0 :(得分:1)

试试这个,对我来说很好用

function invokeObjectiveC() {
    var iframe = document.createElement("IFRAME");
    iframe.setAttribute(your stuff here);
    document.documentElement.appendChild(iframe);
    iframe.parentNode.removeChild(iframe);
    iframe = null;
}

答案 1 :(得分:0)

只有在Web视图重新加载时才会调用

webView:shouldStartLoadWithRequest:navigationType:,这就是此委托的目的。您可以使用NSNotificationCenter来调用重新加载网络视图的方法。