UIWebView UIWKWebView的使用心得


UIWebView

IOS7  使用的是UIWebView 在代理方法中

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType;

作用就是准备加载内容时调用的方法,通过返回值来进行是否加载的设置,

这里返回值是一个Bool类型。

如果为webView添加了delegate对象并实现该接口,那么在webView加载任何一个frame之前都会delegate对象的该方法,该方法的返回值用以控制是否允许加载目标链接页面的内容,返回YES将直接加载内容,NO则反之。并且UIWebViewNavigationType枚举,定义了页面中用户行为的分类,包括

  • UIWebViewNavigationTypeLinkClicked,用户触击了一个链接。
  • UIWebViewNavigationTypeFormSubmitted,用户提交了一个表单。
  • UIWebViewNavigationTypeBackForward,用户触击前进或返回按钮。
  • UIWebViewNavigationTypeReload,用户触击重新加载的按钮。
  • UIWebViewNavigationTypeFormResubmitted,用户重复提交表单
  • UIWebViewNavigationTypeOther,发生其它行为。
比如网页其实是调起拨号功能,他的URL传入的是一个电话号码

需求是点击拨号,不需要跳转,这里就要进行处理,返回NO(不直接加载内容


UIWKWebView


ios以后使用此控件,在代理方法进行了区别。

代理方法类似shouldStartLoadWithRequest

- (void)webView:(WKWebView *)webView decidePolicyForNavigationAction:(WKNavigationAction *)navigationAction decisionHandler:(void (^)(WKNavigationActionPolicy))decisionHandler;

这里的

        decisionHandler(WKNavigationActionPolicyAllow);

        decisionHandler(WKNavigationActionPolicyCancel);

类似  

shouldStartLoadWithRequest 的 

return YES   return NO 

默认是需要decisionHandler(WKNavigationActionPolicyAllow);







  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值