为 SwiftUI 视图中的 WKWebView 设置 accessibilityIgnoresInvertColors 属性不起作用的问题的 是通过 UIViewRepresentable 代理自定义 UIView,并将WKWebView添加到该 UIView 上,然后添加 accessibilityIgnoresInvertColors 到 UIView 的 WKWebViewConfiguration。
代码示例:
struct WebView: UIViewRepresentable {
let webView: WKWebView = WKWebView(frame: .zero, configuration: WKWebViewConfiguration())
func makeUIView(context: UIViewRepresentableContext) -> WKWebView {
webView.configuration.accessibilityIgnoresInvertColors = true
return webView
}
func updateUIView(_ uiView: WKWebView, context: UIViewRepresentableContext) {
// Update your view if needed.
}
}
然后在 SwiftUI View 中添加该自定义的 WebView:
struct ContentView: View {
var body: some View {
VStack {
WebView()
}
}
}