如何从javascript调用swift函数

时间:2018-07-31 10:02:06

标签: javascript ios swift uiwebview

我正在使用Swift在UIWebView中注入脚本。当发生某些轻击操作时,脚本将负责处理。发生这种情况时,JavaScript应该调用Swift中的一个函数,它将从JavaScript发送的数据保存在本机变量中。请帮我打电话。

1 个答案:

答案 0 :(得分:1)

为此,您需要从JavaScript文件进行回调,我在其中使用了一个JavaScript编辑器,这是代码:-

window.location = "callback://0/"+ pass your value here

在您的快捷文件中,使用UIWebViewDelegate:-

func webView(_ webView: UIWebView, shouldStartLoadWith request: URLRequest, navigationType: UIWebViewNavigationType) -> Bool {
        let urlString = request.url?.absoluteString
        //NSLog(@"web request");
        //NSLog(@"%@", urlString);
        if ((urlString?.range(of: "callback://0/")) != nil) {

            // We recieved the callback
            let value = urlString?.replacingOccurrences(of: "callback://0/", with: "")



        }
    }