问题解决[<UIViewController 0x8430220>setValue:forUndefinedKey:]this class is not key value..

原因:MainWindow.xib的Custom Class没有改成默认TAB的class(比如FirstView), 而还是UIViewController. 导致解析出错。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下面是一个使用 `window.webkit.messageHandlers.<handlerName>.postMessage(<message>)` 进行消息传递的简单例子: 在 H5 页面中,可以使用以下代码向 iOS App 发送消息: ```javascript window.webkit.messageHandlers.myHandler.postMessage("Hello from H5"); ``` 在 iOS App 中,需要进行相应的设置来接收并处理这个消息。以下是一个示例代码: ```swift import WebKit class ViewController: UIViewController, WKScriptMessageHandler { var webView: WKWebView! override func viewDidLoad() { super.viewDidLoad() let configuration = WKWebViewConfiguration() // 注册 messageHandler configuration.userContentController.add(self, name: "myHandler") webView = WKWebView(frame: view.bounds, configuration: configuration) view.addSubview(webView) // 加载 H5 页面 if let htmlPath = Bundle.main.path(forResource: "index", ofType: "html") { let htmlUrl = URL(fileURLWithPath: htmlPath) webView.loadFileURL(htmlUrl, allowingReadAccessTo: htmlUrl) } } // 实现 WKScriptMessageHandler 的代理方法,接收并处理从 H5 发送过来的消息 func userContentController(_ userContentController: WKUserContentController, didReceive message: WKScriptMessage) { if message.name == "myHandler" { if let body = message.body as? String { print("Received message from H5: \(body)") // 在这里可以进行相应的处理逻辑 } } } } ``` 在这个例子中,我们注册了名为 "myHandler" 的 messageHandler,并在 H5 页面中使用 `window.webkit.messageHandlers.myHandler.postMessage("Hello from H5")` 发送消息。在 iOS App 中,我们实现了 `WKScriptMessageHandler` 的代理方法 `userContentController(_:didReceive:)` 来接收并处理从 H5 发送过来的消息。 当 H5 页面中调用 `window.webkit.messageHandlers.myHandler.postMessage(<message>)` 时,iOS App 中的 `userContentController(_:didReceive:)` 方法会被调用,我们可以在这个方法中获取到消息内容,然后进行相应的处理。 希望这个例子能够帮助你理解如何在 iOS App 中接收来自 H5 页面的消息。如果有任何问题,请随时提问!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值