AIWROK软件苹果IOS如何使用webview 实现 h5界面ui
<div class="blockcode"><blockquote>var web = new WebView()<br>web.show();<br><br><br>web.loadHtml(`<br><br><!DOCTYPE html><br><html lang="en"><br><head><br> <meta charset="UTF-8"><br> <title>WKWebView JS to Swift</title><br> <style><br> body {<br> font-family: -apple-system, BlinkMacSystemFont, sans-serif;<br> padding: 40px;<br> background-color: #f2f2f7;<br> text-align: center;<br> }<br> button {<br> font-size: 18px;<br> padding: 12px 24px;<br> margin: 10px;<br> border: none;<br> border-radius: 8px;<br> background-color: #007aff;<br> color: white;<br> cursor: pointer;<br> }<br> button:hover {<br> background-color: #005fd1;<br> }<br> </style><br></head><br><body><br><br> <h1>Swift 调用演示</h1><br><br> <button onclick="setConfig('a','6666')">设置值</button><br> <button onclick="main()">加载脚本</button><br><br> <script><br><br> async function main(){<br> //写入配置参数<br> setConfig('a','6666')<br> //获取配置参数<br> const result = await getConfig("a");<br> //吐司提示<br> toast(result.toString())<br><br> //运行脚本代码,脚本要写到lamada表达式里<br> runJS( ()=>{<br> //脚本写这里<br> printl("1233")<br> })<br><br> //运行脚本文件<br> runFile("主脚本.js")<br> <br> }<br> <br> </script><br><br></body><br></html><br><br><br>`)</blockquote></div><ne-clipboard data="%7B%22type%22%3A%22fragment%22%2C%22name%22%3A%22%23fragment%22%2C%22children%22%3A%5B%7B%22type%22%3A%22element%22%2C%22id%22%3A%22ud0491c0f%22%2C%22name%22%3A%22oli%22%2C%22attrs%22%3A%7B%22list%22%3A%22u41d9491e%22%2C%22fid%22%3A%22u9c9c9712%22%2C%22indexType%22%3A0%2C%22indexStyle%22%3A%7B%7D%2C%22parentIndex%22%3A%5B%5D%2C%22index%22%3A0%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22element%22%2C%22id%22%3A%22uff08c872%22%2C%22name%22%3A%22code%22%2C%22attrs%22%3A%7B%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22text%22%2C%22id%22%3A%22u1a7b11eb%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22setConfig('a'%2C'6666')%22%7D%5D%7D%2C%7B%22type%22%3A%22text%22%2C%22id%22%3A%22uf9dba9b4%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%20%22%7D%2C%7B%22type%22%3A%22text%22%2C%22id%22%3A%22u18a73690%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%E5%92%8C%22%7D%2C%7B%22type%22%3A%22text%22%2C%22id%22%3A%22uf77bee71%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%20%22%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22u6061382d%22%2C%22name%22%3A%22code%22%2C%22attrs%22%3A%7B%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22text%22%2C%22id%22%3A%22uc58b4992%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22getConfig(%5C%22a%5C%22)%22%7D%5D%7D%2C%7B%22type%22%3A%22text%22%2C%22id%22%3A%22u58b08e17%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%20%22%7D%2C%7B%22type%22%3A%22text%22%2C%22id%22%3A%22ub06026b0%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%E8%BF%99%E4%B8%A4%E4%B8%AA%E5%87%BD%E6%95%B0%E5%9C%A8%E4%BD%A0%E7%9A%84HTML%E4%BB%A3%E7%A0%81%E4%B8%AD%E8%A2%AB%E8%B0%83%E7%94%A8%EF%BC%8C%E4%BD%86%E5%B9%B6%E6%9C%AA%E5%9C%A8%E6%8F%90%E4%BE%9B%E7%9A%84%E4%BB%A3%E7%A0%81%E4%B8%AD%E5%AE%9A%E4%B9%89%E3%80%82%E4%BD%A0%E9%9C%80%E8%A6%81%E5%9C%A8Swift%E4%BB%A3%E7%A0%81%E4%B8%AD%E5%AE%9A%E4%B9%89%E8%BF%99%E4%BA%9B%E5%87%BD%E6%95%B0%EF%BC%8C%E6%88%96%E8%80%85%E5%9C%A8HTML%E4%B8%AD%E6%B7%BB%E5%8A%A0%E7%9B%B8%E5%BA%94%E7%9A%84JavaScript%E5%AE%9E%E7%8E%B0%E3%80%82%22%7D%5D%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22u7bc388d9%22%2C%22name%22%3A%22oli%22%2C%22attrs%22%3A%7B%22list%22%3A%22u41d9491e%22%2C%22fid%22%3A%22u9c9c9712%22%2C%22indexType%22%3A0%2C%22indexStyle%22%3A%7B%7D%2C%22parentIndex%22%3A%5B%5D%2C%22index%22%3A1%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22element%22%2C%22id%22%3A%22u9029cee9%22%2C%22name%22%3A%22code%22%2C%22attrs%22%3A%7B%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22text%22%2C%22id%22%3A%22uefc02b2f%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22toast(result.toString())%22%7D%5D%7D%2C%7B%22type%22%3A%22text%22%2C%22id%22%3A%22u444d2d76%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%20%22%7D%2C%7B%22type%22%3A%22text%22%2C%22id%22%3A%22ucc6bfcc7%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%E5%87%BD%E6%95%B0%E5%9C%A8%E4%BD%A0%E7%9A%84HTML%E4%BB%A3%E7%A0%81%E4%B8%AD%E8%A2%AB%E8%B0%83%E7%94%A8%EF%BC%8C%E4%BD%86%E5%B9%B6%E6%9C%AA%E5%9C%A8%E6%8F%90%E4%BE%9B%E7%9A%84%E4%BB%A3%E7%A0%81%E4%B8%AD%E5%AE%9A%E4%B9%89%E3%80%82%E5%90%8C%E7%90%86%EF%BC%8C%E4%BD%A0%E9%9C%80%E8%A6%81%E5%9C%A8Swift%E4%BB%A3%E7%A0%81%E4%B8%AD%E5%AE%9A%E4%B9%89%E8%BF%99%E4%B8%AA%E5%87%BD%E6%95%B0%EF%BC%8C%E6%88%96%E8%80%85%E5%9C%A8HTML%E4%B8%AD%E6%B7%BB%E5%8A%A0%E7%9B%B8%E5%BA%94%E7%9A%84JavaScript%E5%AE%9E%E7%8E%B0%E6%9D%A5%E6%98%BE%E7%A4%BA%E5%90%90%E5%8F%B8%E6%8F%90%E7%A4%BA%E3%80%82%22%7D%5D%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22ua3fb9f97%22%2C%22name%22%3A%22oli%22%2C%22attrs%22%3A%7B%22list%22%3A%22u41d9491e%22%2C%22fid%22%3A%22u9c9c9712%22%2C%22indexType%22%3A0%2C%22indexStyle%22%3A%7B%7D%2C%22parentIndex%22%3A%5B%5D%2C%22index%22%3A2%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22element%22%2C%22id%22%3A%22u114e768d%22%2C%22name%22%3A%22code%22%2C%22attrs%22%3A%7B%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22text%22%2C%22id%22%3A%22ue556e459%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22runJS%22%7D%5D%7D%2C%7B%22type%22%3A%22text%22%2C%22id%22%3A%22ub1494e4c%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%20%22%7D%2C%7B%22type%22%3A%22text%22%2C%22id%22%3A%22u478f1533%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%E5%87%BD%E6%95%B0%E7%94%A8%E4%BA%8E%E8%BF%90%E8%A1%8CJavaScript%E4%BB%A3%E7%A0%81%EF%BC%8C%E4%BD%A0%E9%9C%80%E8%A6%81%E5%9C%A8Swift%E4%B8%AD%E5%AE%9E%E7%8E%B0%E8%BF%99%E4%B8%AA%E5%87%BD%E6%95%B0%EF%BC%8C%E4%BB%A5%E5%85%81%E8%AE%B8WebView%E6%89%A7%E8%A1%8C%E4%BC%A0%E5%85%A5%E7%9A%84JavaScript%E4%BB%A3%E7%A0%81%E5%9D%97%E3%80%82%22%7D%5D%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22u13b9ab7c%22%2C%22name%22%3A%22oli%22%2C%22attrs%22%3A%7B%22list%22%3A%22u41d9491e%22%2C%22fid%22%3A%22u9c9c9712%22%2C%22indexType%22%3A0%2C%22indexStyle%22%3A%7B%7D%2C%22parentIndex%22%3A%5B%5D%2C%22index%22%3A3%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22element%22%2C%22id%22%3A%22ufc51e84a%22%2C%22name%22%3A%22code%22%2C%22attrs%22%3A%7B%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22text%22%2C%22id%22%3A%22ub3f87ec3%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22runFile(%5C%22%E4%B8%BB%E8%84%9A%E6%9C%AC.js%5C%22)%22%7D%5D%7D%2C%7B%22type%22%3A%22text%22%2C%22id%22%3A%22u0b99320b%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%20%E5%87%BD%E6%95%B0%E7%94%A8%E4%BA%8E%E8%BF%90%E8%A1%8CJavaScript%E6%96%87%E4%BB%B6%EF%BC%8C%E5%90%8C%E6%A0%B7%E9%9C%80%E8%A6%81%E5%9C%A8Swift%E4%B8%AD%E5%AE%9E%E7%8E%B0%EF%BC%8C%E4%BB%A5%E5%85%81%E8%AE%B8WebView%E5%8A%A0%E8%BD%BD%E5%B9%B6%E6%89%A7%E8%A1%8C%E6%8C%87%E5%AE%9A%E7%9A%84JavaScript%E6%96%87%E4%BB%B6%E3%80%82%22%7D%5D%7D%5D%2C%22attrs%22%3A%7B%7D%7D" source="https%3A%2F%2Fwww.yuque.com%2Faiwork%2Fnba2pr%2Flyswkotwhog450he"></ne-clipboard><div class="lake-content" typography="classic"><ol class="ne-ol" style="padding-left: 23px;"><li id="ud0491c0f" data-lake-index-type="0"><code class="ne-code" style="font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; background-color: rgba(0, 0, 0, 0.06); border: 1px solid rgba(0, 0, 0, 0.08); border-radius: 2px; padding-right: 2px; padding-left: 2px;"><span class="ne-text">setConfig('a','6666')</span></code><span class="ne-text"> </span><span class="ne-text">和</span><span class="ne-text"> </span><code class="ne-code" style="font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; background-color: rgba(0, 0, 0, 0.06); border: 1px solid rgba(0, 0, 0, 0.08); border-radius: 2px; padding-right: 2px; padding-left: 2px;"><span class="ne-text">getConfig("a")</span></code><span class="ne-text"> </span><span class="ne-text">这两个函数在你的HTML代码中被调用,但并未在提供的代码中定义。你需要在Swift代码中定义这些函数,或者在HTML中添加相应的JavaScript实现。</span></li><li id="u7bc388d9" data-lake-index-type="0"><code class="ne-code" style="font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; background-color: rgba(0, 0, 0, 0.06); border: 1px solid rgba(0, 0, 0, 0.08); border-radius: 2px; padding-right: 2px; padding-left: 2px;"><span class="ne-text">toast(result.toString())</span></code><span class="ne-text"> </span><span class="ne-text">函数在你的HTML代码中被调用,但并未在提供的代码中定义。同理,你需要在Swift代码中定义这个函数,或者在HTML中添加相应的JavaScript实现来显示吐司提示。</span></li><li id="ua3fb9f97" data-lake-index-type="0"><code class="ne-code" style="font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; background-color: rgba(0, 0, 0, 0.06); border: 1px solid rgba(0, 0, 0, 0.08); border-radius: 2px; padding-right: 2px; padding-left: 2px;"><span class="ne-text">runJS</span></code><span class="ne-text"> </span><span class="ne-text">函数用于运行JavaScript代码,你需要在Swift中实现这个函数,以允许WebView执行传入的JavaScript代码块。</span></li><li id="u13b9ab7c" data-lake-index-type="0"><code class="ne-code" style="font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; background-color: rgba(0, 0, 0, 0.06); border: 1px solid rgba(0, 0, 0, 0.08); border-radius: 2px; padding-right: 2px; padding-left: 2px;"><span class="ne-text">runFile("主脚本.js")</span></code><span class="ne-text"> 函数用于运行JavaScript文件,同样需要在Swift中实现,以允许WebView加载并执行指定的JavaScript文件。</span></li></ol></div><p></p>
页:
[1]