美文网首页
学习--WebKit(WKUIDelegate)

学习--WebKit(WKUIDelegate)

作者: F麦子 | 来源:发表于2017-09-21 18:01 被阅读190次

    WebKit(展示Web界面)

    WebKit(WKScriptMessageHandler)

    WebKit(WKUIDelegate)

    WebKit(WKNavigationDelegate)

    WebKit(刷新)

    WebKit(导航)

    WebKit(浏览记录)

    WebKit(进度条)

    在上一篇《WebKit(WKScriptMessageHandler)》博文中,最后我们运行项目后,发现并没有在app上看见alert弹出框,其实这不是一个bug。而是苹果WebKit库的又一升级。

    WebKit考虑web页面的各种弹出框样式,如alert弹出框、Confirm选择框和TextInput输入框。WebKit为了让我们开发人员可以根据自己APP的风格设计各种不同的样式。对这些弹出框进行了封装。

    这一列的操作都是基于WKUIDelegate协议实现的,本篇博文将为大家讲解WKUIDelegate协议。

    1 改造index.html页面

    要实现这三个弹出框,我们先改造我们前面用到的index.html页面,使其支持alert弹出框、Confirm选择框和TextInput输入框。

    下面是所有源码,复制替换即可。

    运行项目,看见如下效果图。

    当然此时你点击这三个按钮是没有任何效果的,我们还没有实现WKUIDelegate协议。

    2 WKUIDelegate协议

    WKUIDelegate就是为了UI元素存在的,其中有几个协议。

    3 实现WKUIDelegate

    下面就来实现这几个协议,让我们的项目完整起来。

    3.1 引入WKUIDelegate

    在YJBaseVC.m上添加WKUIDelegate实现。

    @interfaceYJBaseVC()

    3.2 设置WKUIDelegate代理

    修改- (WKWebView *)webView方法。

    3.3 实现WKUIDelegate协议

    在YJBaseVC.m添加如下方法。

    这里使用UIAlertController为大家展示这种效果,运行项目点击页面上的三个按钮即可看到相应的效果图。

    到这里关于WebKit基础部分就讲解完毕了,已支持市面上大多数的需求。后面会讲解关于WebKit的高级应用,模拟浏览器操作。

    其他

    源代码

    Objective-C

    参考资料

    WebKit Framework Reference

    WKWebView的新特性与使用

    WKWeb​View

    相关文章

      网友评论

          本文标题:学习--WebKit(WKUIDelegate)

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