位置: 编程技术 - 正文
推荐整理分享ListView中EditText焦点问题,希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!
近期一个项目中需要开发一种类表的界面来显示和配置参数,Android并无直接类表的控件支持,我采用了ListView中布局EditText和TextView来实现,其中TextView用来显示参数表示符,EditText用来显示参数,用一个自定义AlertDialog弹出显示,如下图所示。
二、问题:
开发出来的APK软件,在手机上操控是OK的,但在电视上无法操控,具体表现为:
三、解决:
1 通过设置focus停在ListView上,解决ListView无法点击的问题。方法如下
2 关于问题2和3,本身和1就是互斥的,例如我将焦点手动设置到EditText上,此时无法响应点击ListView,更要命的,逻辑完全混乱,例如我按向下键时,光标停留在第一栏,而焦点已经已跟随遥控移动到了 下一栏,此时按OK键,修改的还是光标停留的那一栏的数据,如图3所示。 最终经过反复尝试,下述解决方法得以解决。
解决方法:在ListView中setOnItemSelectedListener的onItemSelected 和 onNothingSelected分别输入下述代码
3 关于问题4,无法调出输入法问题,网上介绍的零零总总,绝大部分都是无用的,仅有一种方法是OK,原文链接在这,解决方法如下:
四、说明:
1 关于android:descendantFocusability,有三个属性,简述如下表,详述可参考这篇博文说明。
beforeDescendants
viewgroup会优先其子类控件而获取到焦点
afterDescendants
viewgroup只有当其子类控件不需要获取焦点时才获取焦点
blocksDescendants
viewgroup会覆盖子类控件而直接获得焦点
Android点击事件的四种写法 Android点击事件的四种写法一、Android点击事件的四种写法1、点击事件的第一种写法.写一个内部类.实现点击事件的接口bt.setOnClickListener(newMyButtonListener());
android 控件onClick事件的4种实现方式 1、spanstyle=white-space:pre/spanTextViewtv=(TextView)findViewById(R.id.tv);tv.setOnClickListener(newOnClickListener(){@OverridepublicvoidonClick(Viewarg0){//TODOAuto-generatedmethodstub//dosomething
点击按钮之后仍然显示对话框--Android AndroidDialog,keepdialogopenwhenbuttonispressed?目标:如图点击对话框中确定按钮之后需要判断输入是否为空,如果为空,显示toast,如果输入符合要求,那么dismis
上一篇:通过命令行执行adb shell am broadcast发送广播通知。(命令行执行bat文件)
友情链接: 武汉网站建设