EditText嵌在ListView中导致安卓键盘闪退的问题

今天遇到一个诡异的问题,在锤子和三星手机上出现了点击EditText结果键盘闪了一下又退下了,其他手机上却没有这个问题,搜了很久也没有找到,后来各种变换搜索词终于在StackOverFlow上找到了答案,在这里分享给大家。

http://stackoverflow.com/questions/20406472/edittext-in-listview-loses-focus-when-pressed-on-android-4-x

究其原因是因为EditText在ListView中时,当EditText得到焦点后ActionBar会将焦点夺走,导致键盘闪了一下又退下。

解决方法如下:

先在ListView的属性中加入

android:descendantFocusability="beforeDescendants"

然后再在activity的属性中添加

android:windowSoftInputMode="adjustPan"

再次运行就ok了。

如果大家觉得对自己有帮助的话,还希望能帮顶一下,谢谢:)
个人博客:http://blog.csdn.net/zhaoxy2850
本文地址:http://blog.csdn.net/zhaoxy_thu/article/details/45200285
转载请注明出处,谢谢!

时间: 2024-12-16 03:36:50

EditText嵌在ListView中导致安卓键盘闪退的问题的相关文章

【重要】安卓微信闪退,非清空数据法解决,不破坏聊天记录【完善中】

前言 [本文不建议跳读.少读] 之前研究过微信记录的恢复办法,对其存储结构稍有了解,今天又遇到闪退的问题,真想用现在流行的话说:日了狗了. 于是乎,到网上搜索了一番,全是让你清除数据.重装.卸载之类的.对于这些方法,我只想说,简直就是害人.如果你是刚装的微信这样做,或者聊天记录对你来说不重要,那么你就去折腾.但是,度过聊天记录对你来说很重要,那么,请慎重! 本文通过自己的探索,寻求了闪退的终极解决办法,如果还不能解决,需要保全聊天记录的,可以联系我来帮您导出,切勿手贱! 症状描述 最近老是提示空

直接双击启动tomcat中的startup.bat闪退原因及解决方法

免安装的tomcat双击startup.bat后,启动窗口一闪而过,而且tomcat服务未启动. 原因是:在启动tomcat是,需要读取环境变量和配置信息,缺少了这些信息,就不能登记环境变量,导致了tomcat的闪退. 解决办法: 1.在已解压的tomcat的bin文件夹下找到startup.bat,右击->编辑.在文件头加入下面两行: SET JAVA_HOME=D:\Java\jdk1.6.0_10 (java jdk目录) SET TOMCAT_HOME=E:\tomcat-6.0.35

多线程导致的iOS闪退分析

前段时间做了一个APP,在测试的时候遇到了很奇怪的闪退情况. 这个APP是有关声音处理的:设备一边录音,一边对声音进行处理.所以需要2个线程,一个线程将录音保存下来,另一个处理保存下来的声音.测试的时候,会在1~10min之内,不定时.无预兆的出现闪退的情况,报的错也各不一样,有的是 1)"NSGenericException 'Collection was mutated while being enumerated" 或者: 2)"pointer being freed

setSupportActionBar(toolbar)导致程序崩溃闪退

最近在做一个项目,使用了第三方的开源项目,主要是想实现android5.0之后推出的MaterialDesign的风格,但是代码已经写好了,发现一运行就闪退,所以就开始debug,发现问题出现在 1 Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 2 setSupportActionBar(toolbar); 很显然应该是在第二行出错了,再根据logcat上的日志: This Activity already has an acti

解决B4A编写的安卓app闪退的问题

1.修改代码中划线部分为自己的app名称: #Region Project Attributes #ApplicationLabel: B4A Example #VersionCode: 1 #VersionName: 2 #SupportedOrientations: unspecified #CanInstallToExternalStorage: False #End Region 2.打开IDE中的build configrations中的Package Name 为自己的包名如:B4A

Android 7.0 之后相机/文件读写等权限获取方式改变,导致开启相机闪退

在 Android 7.0 之前 Google 提供的动态申请权限的 API,可以调用相机拍照,访问SDcard等操作都只需要申请对应的权限,如下: <uses-permission android:name="android.permission.CAMERA" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 但是 7.0 更新之

如果你使用上述这段12行的JavaScript代码,就可以能让firefox、chrome、safari浏览器崩溃,而且还能让iphone重启,安卓手机闪退!

<html> <body> <script> var total=""; for (var i=0;i<1000000;i ) { total= total i.toString(): history.pushState(0,0,total): } </script> </body> </html>

关于ListView中EditText在软键盘弹出后的焦点问题

转自:http://www.cnblogs.com/haofei/p/3305030.html 在ListView中,每次弹出软键盘后就会重新调用getView()方法,导致EditText失去焦点. 解决办法:在getView()方法中添加监听器: editText.setOnTouchListener(new OnTouchListener() {            @Override            public boolean onTouch(View v, MotionEve

android edittext + listview 实现搜索listview中的内容

以前一直以为edittext中输入一些东西.然后可以检测listview中的内容很高大上.一直没有去尝试.现在项目中遇到了.特此过来尝试一番.结果发现挺简单的,效果还不错,主要就是用到了edittext的 textchange监听 以及listview的过滤.下面直接上截图: xml: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://