Android活动开始时显示Android键盘的问题

时间:2011-02-24 20:58:20

标签: android

我正在开发一个Android应用程序,并在以下场景中遇到问题:

  1. 在第一个活动列表用户触摸列表项
  2. 弹出一个包含所选项目子类别列表的对话框窗口
  3. 用户选择子类别
  4. 下一个活动以所选项目和子类别开始。注意:
    • 下一个活动屏幕上的第一个元素是EditText字段
    • 下一个活动的第二个元素是按钮和 在onCreate()方法中,我将重点放在按钮speakNameBtn.requestFocus();
  5. 并且问题在于:如果用户通过在列表中触摸它来在步骤3中选择子类别,则在下一个屏幕上,用户看到弹出键盘并且EditText字段而不是按钮具有焦点。

    问题 - 如何防止该键盘出现?

    似乎第一个屏幕对话框上的触摸事件以某种方式传播到下一个活动。如果我使用球来选择子类别而不是触摸它,一切都按预期工作 - 焦点设置在按钮上,我看不到键盘。

    任何想法都将不胜感激。

1 个答案:

答案 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"/>

几个月前我从一个论坛上拿到了它,它工作正常......再也找不到了,所以我从我的一个项目中粘贴它。