美文网首页程序员
iOS--H5和iOS的那些事(一)

iOS--H5和iOS的那些事(一)

作者: 乐逍遥的笔记 | 来源:发表于2017-11-29 12:05 被阅读187次

    在项目中总少不了我们App和H5的加载和交互等操作,下面就总结下自己在这个过程中学到的相关东西吧,希望可以帮到有需要的小伙伴,同时理解和书写有误的地方也欢迎大家批评指正:

    一、关于H5的加载方式:

    1.(自己目前知道的)使用UIWebView加载一个H5链接(两种方式):

    (1)、

    第一种加载方式

    (2)、

    第二种加载方式

    讲道理,这两种加载H5链接的方式都是可以的,但是由于可能某些网页链接不规范,会导致第一种方法不会执行webViewDidFinishLoad这个代理方法,但是第二种会执行。(亲测遇见这样的问题,改成第二种加载方式就秒解决了)。

    2.在有些情况下,需要我们加载后台返回的带有p标签的网页内容,自己目前知道的也有两种加载方式:

    (1)、

    第一种加载方式

    该加载方式主要使用到了UITextView的attributedText属性,加载纯文字的p标签是可以的,加载图片的时候,如果图片宽度超过屏幕宽的话,会造成图片加载到一部分。

    (2)、

    第二种加载方式

    这种加载方式使用到了UIWebView,图片和文字都可以完美的加载,并且如果需要修改相关属性的话,也可以进行修改。

    3.加载本地的html文件:

    加载本地的html文件

    该加载方式根据路径寻找本地文件,用UIWebView加载本地的HTML文件。

    二、关于H5和iOS的交互:

    目前知道两种比较简单的方式,如果有大神知道更多更好的交互方式,欢迎指出。

    1、

    实现UIWebViewDelegate中的一个代理方法

    当我们点击H5需要交互的时候,此时该代理方法中会有一个url返回值,我们可以根据返回的url链接做H5和App的操作。

    2、

    该方法需要和H5商量好对接参数和方法

    个人认为该方法主要用于,类似一个H5页面有一个按钮,点击实现和App交互的场景。该方法需要和H5商量好对接参数和方法,如果在使用该方法的过程中,出现不能交互的情况,可以检查下方法名是否和参数名重复了。另外,在交互的过程中,如果涉及UI页面刷新的问题,一定要放在主线程执行,否则会Crash。

    大致就先介绍这么多吧,后续的WKWebView加载交互,以及更多的加载交互方法再更新,同时理解和书写有误的地方也欢迎大家指出。

    相关文章

      网友评论

        本文标题:iOS--H5和iOS的那些事(一)

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