在 SwiftUI 中渲染本地 HTML 文件并与其通信,可以通过使用'WebView'组件来实现。下面是一个完整的例子:

首先,将本地 HTML 文件添加到 Xcode 项目中:

  1. 在项目导航器中右键点击项目文件夹,选择'New Group'来创建一个新的文件夹。
  2. 将 HTML 文件拖拽到新创建的文件夹中。

接下来,在 SwiftUI 视图中使用'WebView'组件来加载和渲染 HTML 文件:

import SwiftUI
import WebKit

struct ContentView: View {
    var body: some View {
        WebView(request: URLRequest(url: Bundle.main.url(forResource: "index", withExtension: "html")!))
    }
}

struct WebView: UIViewRepresentable {
    let request: URLRequest
    
    func makeUIView(context: Context) -> WKWebView {
        return WKWebView()
    }
    
    func updateUIView(_ uiView: WKWebView, context: Context) {
        uiView.load(request)
    }
}

在此示例中,我们创建了一个名为'ContentView'的 SwiftUI 视图,该视图使用'WebView'组件来加载名为'index.html'的本地 HTML 文件。'WebView'是一个自定义的'UIViewRepresentable'类型,用于将'WKWebView'嵌入到 SwiftUI 中。

请确保在使用此功能之前添加'WebKit'框架到项目中。

SwiftUI 渲染本地 HTML 文件并实现通信:完整示例

原文地址: https://www.cveoy.top/t/topic/mFUD 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录