最近开发两个项目,遇到了同一个问题:进入Activity中,点击任何地方都没反应。这个问题太奇怪了,问了很多人都没能解决,最后自己一行一行注释,看执行到哪里出的问题,终于解决了。
现在说说解决办法吧。最开始发现进入activity,第一次点击button无效,以为是没有获取到焦点,然后加上了: btn.setFocusable(boolean true); btn.setFocusableInTouchMode(boolean true); btn.requestFocus(); btn.requestFocusFromTouch();
但是发现无济于事,这下就奇怪了,到底是咋回事呢?我发现只有Android7.0问题,就连7.1都没问题,难道是7.0的bug?开始百度,网上一般都是某一个view第一次点击没反应,而我的是整个activity点击都没反应,有时是第一次没反应,有时是一直没反应。试过所有方法都没能解决,最后自己一行一行注释,看看执行到哪出的问题。最后发现,我在网络请求的时候,show了一个Dialog,当请求结束执行了:loadingDialog.hide();以此为分界线,只要执行完这句话,整个activity就不再响应点击事件。然后我换成了loadingDialog.dismiss(),问题竟然解决了! 最后查了一下hide和dismiss的区别,还是没弄懂到底是什么原因。总之问题解决了,原因慢慢找,等找到了,再来更博~~ 谢谢大家!
新闻热点
疑难解答