关于 singleCursorHandlerTouchEvent -getEditableSupport FASLE 的解决方案

本文详细介绍了如何在Android应用中解决WebView加载网页后无法响应其他按钮点击的问题,通过添加权限、覆盖WebViewClient、设置JavaScriptEnabled以及正确加载URL等步骤实现网页正常交互。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天设计了一个WebView打开指定的URL的Android程序,原以为,只需要通过mWebview = (WebView) findViewById(R.id.main_webview);获取到WebView控件,然后利用它加载一个指定的URL就可以了,恩,的确是可以加载网页,比如我加载的是www.baidu.com,则确实是打开的百度的网页,可是点击百度网页上其他的按钮时,却没有任何响应,查询了下logcat中返回的信息,显示singleCursorHandlerTouchEvent -getEditableSupport  FASLE。

在网络上找了一些资料,有很多解决方法,包括添加权限、覆盖WebView的WebViewClient对象等方法,仍然没有解决我的问题,根据自己以前的经验,终于找到解决方法,特记录下来,以备后续使用。

第一步:为程序添加权限, 添加<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />,  <uses-permission android:name="android.permission.INTERNET" />,添加这两个权限;

第二步:通过mWebview = (WebView) findViewById(R.id.main_webview);获取到WebView控件,并覆盖它的WebViewClient,这是因为,我们要在自己的WebView里面,打开URL,如果没有覆盖它,则会调用Android系统默认的浏览器,打开我们的URL,覆盖之后,需要在WebViewClient里面重载onPageFinished, onPageStarted,onLoadResource,onReceivedError这几个接口,如需要可以做相应的处理,一般都没有做处理;

第三步:通过接口mWebview.getSettings();获取WebView的设置参数变量,设置wSetting.setJavaScriptEnabled(true);这一步是最关键的,很多童鞋出现如题中的错误就是因为这个属性设置漏掉了;

第四步:利用mWebview.loadUrl(URL);加载我们所需要加载的url;

OK,具体的操作步骤就是如此,希望对某些童鞋有些用处,也希望以后遇到类似的问题,可以给自己一个解决的思路!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值