我正在使用phonegap开发ios应用程序。因为它需要实现人脸识别,所以我也在这里使用本地语言objective-c。
在主要故事板中,我有两个视图控制器。一个叫做“FaceRec”,它完全是通过使用objective-c创建的。这里实现了面部识别功能。另一个是phonegap主视图控制器。它们通过使用Tab Bar Controller连接。
问题是当用户从Tab Bar Controller进入FaceRec页面并从服务器获得响应时。如果响应为真,我不知道如何将该响应从FaceRec发送到phonegap主视图控制器。因为它们在不同的视图控制器中,我也不知道如何从objective-c调用javascript函数。
我知道通过使用插件我可以从javascript调用objective-c方法并获得响应,但我想要的是通过不同的视图控制器将数据从objective-c发送到phonegap并调用javascript函数。
无论如何有任何想法?提前谢谢!
以下是index.html中的代码:
<script type="text/javascript">
function login()
{
$(function()
{
$.mobile.navigate( "#main", { transition : "slide", info: "info about the #bar hash" });
});
}
</script>
<div id="loginPage" data-role="page" data-theme="b">;
<div id="main" data-role="page" data-theme="b">
答案 0 :(得分:-1)
使用以下内容从Obj-C调用Javascript
函数:
[self writeJavascript:@"YourJSFunction();"];
您还可以将任何内容作为字符串传递给JS
:
NSString *js = @"YourJSFunction('";
js = [js stringByAppendingString:yourData];
js = [js stringByAppendingString:@"');"];
[self writeJavascript:js];
yourData
必须是字符串。您可以基本上将JSON Serialize几乎任何数组或字典串行化,然后将其传递给您的javascript函数。