Android4.4点击无响应,webview某些超链接点击无响应的问题
出问题的超链接:
出门旅行想拍好建筑与城市,却不想背单反?其实只要一个手机就够了!
但是把链接换成以下就OK
安顺市区—大黑村—邢江河—竹海—傩雕人家—屯堡故事会—手工习作傩雕。
对比发现,有问题的链接是_blank标签,OK的链接是_self标签,因此需要对_blank标签进行适配
Android webView适配:重写onCreateWindow方法
mWebView.setWebChromeClient(new WebChromeClient() {
@Override
public boolean onCreateWindow(WebView view, boolean isDialog, boolean isUserGesture, Message resultMsg) {
WebView newWebView = new WebView(view.getContext());
newWebView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
// 在此处进行跳转URL的处理, 一般情况下_black需要重新打开一个页面,
CommonWebActivity.start(view.getContext(), url);
return true;
}
});
WebView.WebViewTransport transport = (WebView.WebViewTransport) resultMsg.obj;
transport.setWebView(newWebView);
resultMsg.sendToTarget();
return true;
}
});
IOS适配(wkwebview):重写decidePolicyForNavigationAction方法
- (void)webView:(WKWebView *)webView decidePolicyForNavigationAction:(WKNavigationAction *)navigationAction decisionHandler:(void (^)(WKNavigationActionPolicy))decisionHandler{
NSURL *URL = navigationAction.request.URL;
NSString *scheme = [URL scheme];
if ([scheme isEqualToString:@"tel"]) {
NSString *resourceSpecifier = [URL resourceSpecifier];
NSString *callPhone = [NSString stringWithFormat:@"telprompt://%@", resourceSpecifier];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:callPhone]];
}
//判断是否开启新界面
if (navigationAction.targetFrame == nil) {
//手动跳转至新界面加载url
[self gotoWebPage:URL.absoluteString];
decisionHandler(WKNavigationActionPolicyAllow);
}else{
if ([URL.absoluteString containsString:@"http"] && ![URL.absoluteString containsString:_countryUrl]) {
//注意,这里要取消action,否则会在原界面加载url
decisionHandler(WKNavigationActionPolicyCancel);
//手动跳转至新界面加载url
[self gotoWebPage:URL.absoluteString];
}
}
decisionHandler(WKNavigationActionPolicyAllow);
}
Android4.4点击无响应,webview某些超链接点击无响应的问题相关推荐
- 可以响应各个方向CompoundDrawables点击操作的TextView的使用
本文主要介绍如何使用一个可以响应各个方向CompoundDrawables点击操作的TextView.关于其实现原理见可以响应各个方向CompoundDrawables点击操作的TextView的实现 ...
- 脑右下角出现金色小锁,进入系统缓慢,点击应用及各种操作反应缓慢或无反应,严重者电脑不断重启
问题:电脑右下角出现金色小锁,进入系统缓慢,点击应用及各种操作反应缓慢或无反应,严重者电脑不断重启. 解决方法:开机出现LOGO界面长按电源键关机,连续两次,第三次(有些电脑需要五次)开机会自动进入高 ...
- 自定义控件:图片轮播,点击图片进入webview
自定义控件:图片轮播,点击图片进入webview 版权声明:本文为博主原创文章,未经博主允许不得转载. 很方便的先自定义控件,可以直接使用,添加属性和实现功能: import java.util.Ar ...
- 悬浮球(多机型悬浮窗权限设置,状态栏适配,可自动或手动设置大小,点击跳转WebView,拖拽处理)
悬浮球:多机型悬浮窗权限设置,状态栏适配,可自动或手动设置大小,点击跳转WebView,拖拽处理, 应用内和应用外都可以显示(可设置取消)可做SDK 和依赖类,横竖屏切换处理 项目地址: GitHub ...
- 关于物联网2G/3G/4G/5G/NB模组开机后模组AT指令无反应/模块开机失败/模块开机不响应AT指令等问题
一.背景 近些年物联网行业如日中天,越来越多的设备需要接入网络平台.因此无线通信模组便成为了连接物联网感知层和网络层的关键环节,属于底层硬件环节,具备其不可替代性,且无线通信模块与物联网终端存在一一对 ...
- Android事件的响应,Android 开发事件响应之基于监听的事件响应
Android 开发事件响应之基于监听的事件响应 本文将介绍Android 操作系统如何通过监听来实现对事件的响应. Android 开发事件响应之基于监听的事件响应 背景介绍 Android 开发事 ...
- 无服务器架构_如何开始使用无服务器架构
无服务器架构 Traditionally, when you wanted to build a web app or API, you'd usually have to spend signifi ...
- fiddler 自动响应数据保存_想测试HTTP响应不知道如何开展怎么办?
切换至Fiddler,点击测试小伙伴在日常工作中.特别是接口测试时,需要经常和HTTP协议打交道,其中服务器返回的响应数据是接口测试的重要组成部分,这就需要各位小伙伴熟练掌握HTTP响应的组成.如何修 ...
- 【CSS样式按钮点击的样式,按钮被点击时的样式】
CSS样式按钮点击的样式,按钮被点击时的样式 前言 看代码 前言 按钮点击时的样式,一般都是自定义按钮,修改的是按钮被触发时的样式 看代码 <div class="btn"& ...
最新文章
- RabbitMQ启动参数具体含义
- 用Python实现每天向女友表白一次,甜蜜暴击,最后终于被我追到手了!太厉害了!
- chrome浏览器设置网页快速到顶部和到底部的方法
- 【转】Office365完整离线安装包下载及自定义安装教程
- leecode5 最长回文子串
- Ramfs、rootfs 和initramfs
- 传递json_开发技巧分享—JSON 数据格式及函数讲解
- 常用化学消毒剂使用方法
- Redis应用(三)——在非框架中的应用
- Java后端学习路线图,你真的只需要这一张!
- Python基础教程---读书笔记一
- 对WordCOM类工厂80070005和8000401a错误分析及解决办法(DCOM)的补充
- Java 搭建srs流媒体服务器,并使用ffmpeg推流
- 手工清除Windows服务器上的Steam挖矿病毒:HackTool/CoinMiner.a及Trojan/Miner.ac
- ubuntu 刷新频率 如何查看_Ubuntu 7.04救命啊!屏幕刷新频率只有50HZ眼不行啦!显示器是CRT...
- 人工智能机器人发展前景,使用/教程/实例
- 22. 地下城与勇士
- CorelDRAW2023新增了哪些功能?
- 智能电话机器人介绍(AI语音机器人)
- 如何计算Eden区的大小
热门文章
- 为什么git的“ pull request”不称为“ push request”?
- 如何检查对象是否为数组?
- Win11系统如何打开地雷游戏 Win11打开扫雷游戏的教程
- win11文件夹打开延迟怎么办 Windows11文件打开延迟的解决方法
- Activiti(6.0)任务管理服务TaskaskService
- 百度网页搜索无法通过域名访问_网站换域名或网页内容改版对网站的影响以及网站换域名注意事项...
- Git:git stash存储文件修改
- C语言SOCKET编程指南
- DXF文件中将多段线凸度转换成圆弧
- Eigen教程(8)之Map类