MessageHandler 高级用法三:封装WKWebViewController

在封装了MessageHandler 后,我更希望在实际应用的时候更加的便利
也就是封装一个 WKWebViewController,期望在使用的时候只关注 action

期望的效果

  • 调用 JS 方法 -> self.call(methodName)
  • 调用 JS 方法 -> self.call(methodName, callBack)
  • js 调用 APP方法 -> self.regist(methodName)
  • js 调用 APP方法 -> self.regist(methodName, callBack)

欲实现以上的功能实际上就是讲 MessageHandler 封装到 WKWebViewController 中

想必看懂了 MessageHandler 后,如何封装 WKWebViewController 每个人都有一种封装方法,我这里展示出我的封装(已经考虑到了绝大多数情况)

源码已经在 KKWKWebViewController 中

附加功能

  • js 可以更改原生的状态栏style
  • js 可以选择 模态/Push 一个新的控制器
  • js 可以设置返回箭头的事件
  • js 可以更改导航中背景、标题、按钮的颜色
  • APP 会自动提取 H5 title 作为当前页面的标题(当然也有属性控制是否提取)
  • 可以在 KKWKWebViewController 外部设置状态栏 style

源码已经在 KKWKWebViewController 中

你可能感兴趣的:(MessageHandler 高级用法三:封装WKWebViewController)