如何在UIWebView中添加帶有圖像的文本,並通過將這些文本包裝到html中來加載這些文本?
你也可以通過添加JavascriptCore.framework到您的構建階段添加JavaScript回調,您將能夠在迅速或OBJ-C處理:
在代碼中添加按鈕:
<button text="Close" onclick="javascript:callSwiftCode()">Call swift code</button>
而在你UIWebViewDelegate類:
func webViewDidFinishLoad(webView: UIWebView) {
let context: JSContext = webView.valueForKeyPath("documentView.webView.mainFrame.javaScriptContext") as! JSContext
let codeClosure: @convention(block)()->() = {()->() in
print ("This is callback from javascript you can add your code in this closure")
}
let casted: AnyObject = unsafeBitCast(codeClosure, AnyObject.self) as AnyObject
context.setObject(casted, forKeyedSubscript: "callSwiftCode")
}
這是一個非常好的主意。感謝您的答覆。但還有一件事。我可以在打開其他圖像的html文件中添加一個按鈕嗎?那可能嗎? – user3882720
這應該是可以直接在HTML中。如果你想對應用程序的本地代碼進行適當的掛鉤(對於不同的東西),我建議使用'WKWebView'和'WKUserContentController'的'addScriptMessageHandler:name:'方法來安裝java腳本監聽器。 – Gero
是的。查看編輯文章 –