我正在开发一个Android应用程序,并在以下场景中遇到问题:
onCreate()
方法中,我将重点放在按钮speakNameBtn.requestFocus();
并且问题在于:如果用户通过在列表中触摸它来在步骤3中选择子类别,则在下一个屏幕上,用户看到弹出键盘并且EditText
字段而不是按钮具有焦点。
问题 - 如何防止该键盘出现?
似乎第一个屏幕对话框上的触摸事件以某种方式传播到下一个活动。如果我使用球来选择子类别而不是触摸它,一切都按预期工作 - 焦点设置在按钮上,我看不到键盘。
任何想法都将不胜感激。
答案 0 :(得分:8)
将它放在EditText上面:
<!-- Dummy item to prevent AutoCompleteTextView from receiving focus -->
<LinearLayout
android:focusable="true" android:focusableInTouchMode="true"
android:layout_width="0px" android:layout_height="0px"/>
几个月前我从一个论坛上拿到了它,它工作正常......再也找不到了,所以我从我的一个项目中粘贴它。