我是新手使用monotouch.
我的问题是我想从monotouch函数调用javascript函数,javascript函数也可以调用monotouch函数.
我相信,有了客观的c这个问题是可能的,但我需要用monotouch来制作它.
请帮帮我.
任何帮助都要感谢提前
mig*_*aza 27
要从应用程序调用UIWebView中运行的Javascript代码,请使用EvaluateJavascript方法,如下所示:
myView.EvaluateJavaScript ("a = 1;");
Run Code Online (Sandbox Code Playgroud)
要回调您的C#代码,唯一的选择是连接到ShouldStartLoad属性,如下所示:
myView.ShouldStartLoad = myHandler;
[...]
bool myHandler (UIWebView webView, NSUrlRequest request, UIWebViewNavigationType navType)
{
// Determine what to do here based on the @request and @navType
}
Run Code Online (Sandbox Code Playgroud)
当然,如果要轻松访问局部变量,也可以使用匿名方法:
myView.ShouldStartLoad = (webView, request, navType) => {
// Determine here what to do
}
Run Code Online (Sandbox Code Playgroud)
在Javascript方面,如果要回调Mono,则将location.href属性设置为"特殊"URL,如下所示:
// Javascript code:
location.href = "myapp://action?par1=abc&par2=def"
Run Code Online (Sandbox Code Playgroud)
该信息将在请求对象上提供:request.Url.AbsoluteString
我刚刚发布MonoTouch JsBridge以使其更容易.它允许您在本机端和UIWebView之间添加事件侦听器和触发事件.它的灵感来自Titanium.
https://github.com/crdeutsch/MonoTouch-JsBridge
我没有在 monotouch 中尝试过,但它应该与 ObjC 中的相同:
UIWebView.EvaluateJavascript
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10682 次 |
| 最近记录: |