OC和Web交互

作者: 优优切克闹 | 来源:发表于2017-08-11 18:04 被阅读9次

    项目需求是  点击网页的返回,返回到原生APP,所以要截获网页的返回事件。

    原理是和网页端协议好一个URL(字符串),具体格式就随便定义啦

    在手机上点击H5的返回按钮时web会把这个协商好的URL传给OC,OC有一个uiwebview的代理方法可以截获H5的所有JS事件,所以我们要写UIwebview的代理事件并遵循协议,在协议方法里过滤其他事件只取返回事件,然后在返回事件里实现返回原生APP的功能。

    上代码:web那边就这么写

    web

    iOS这边就这么写

    设置代理 遵循代理 在代理方法中实现返回功能

    第二个需求是,导航栏是原生的,点击H5某一按钮跳转到H5的下级界面后,点击导航栏的返回,直接反到原生APP的上级界面而不是H5的上级界面,这肯定是不符合逻辑的。正确的应该是点击导航栏的返回,先返回H5的首界面,再次点击才返回原生APP的上级界面。解决方法如下:

    完美!

    相关文章

      网友评论

        本文标题:OC和Web交互

        本文链接:https://www.haomeiwen.com/subject/iadrrxtx.html