gpt4 book ai didi

javascript - 将 javascript 变量传输到 Objective C (IOS)

转载 作者:行者123 更新时间:2023-11-28 08:02:46 24 4
gpt4 key购买 nike

我正在致力于创建一个应用程序,并且是一名相对较新的 Objective C 程序员。在页面“test.php”上,我有一个 javascript 变量。这是一个简化版本。

<script>
var idx = 45;
document.write(idx);
</script>

我希望能够在我使用 Xcode 创建的 IOS 应用程序中查看变量“idx”的值。连接到页面 test.php 并将我的 Javascript 变量传输到 Objective C 以便我可以将其用作我的 IOS 应用程序的一部分的最佳方式是什么?

任何帮助将不胜感激。谢谢。

最佳答案

您需要使用两部分的组合在 webview 和 native 代码之间进行通信。首先,您需要通过在 Web View 上调用 stringByEvaluatingJavaScriptFromString: 来“触发”Web View 返回某个值。当 webview 由于 javascript 调用而尝试导航时,您可以使用 WebView 的 shouldStartLoadWithRequest: 方法在 native 端拦截它。

有关详细信息,请参阅此处的具体内容 Invoke method in objective c code from HTML code using UIWebView

仅当您需要 Web View 中的某些事件来触发提取(或通知 native 代码该值已设置)时。如果该值始终可以通过 JS 获得,则只需使用 stringByEvaluatingJavaScriptFromString: 即可,如下所示:

NSString *returnvalue =  [self.webviewForHtml stringByEvaluatingJavaScriptFromString:@"var idx = "return_value";return idx;"];

关于javascript - 将 javascript 变量传输到 Objective C (IOS),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25195193/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com