• 赚钱入口【需求资源】限时招募流量主、渠道主,站长合作;【合作模式】CPS长期分成,一次推广永久有收益。主动打款,不扣量;

如何阻止EditText在Activity启动时自动获取焦点

Android cps12345 5个月前 (12-22) 118次浏览 0个评论

我Activity在Android中有两个元素:

  1. EditText
  2. ListView

当我Activity开始时,EditText立即具有输入焦点(光标闪烁)。我不希望任何控件在启动时就将焦点放在输入上。我试过了:

EditText.setSelected(false);
EditText.setFocusable(false);

解决

android:focusableInTouchMode=”true”和android:focusable=”true”父布局(例如LinearLayout或ConstraintLayout类似于下面的示例)将解决这个问题。

<!-- Dummy item to prevent AutoCompleteTextView from receiving focus -->
<LinearLayout
    android:focusable="true" 
    android:focusableInTouchMode="true"
    android:layout_width="0px" 
    android:layout_height="0px"/>

<!-- :nextFocusUp and :nextFocusLeft have been set to the id of this component
to prevent the dummy from receiving focus again -->
<AutoCompleteTextView android:id="@+id/autotext"
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content"
    android:nextFocusUp="@id/autotext" 
    android:nextFocusLeft="@id/autotext"/>
喜欢 (0)

您必须 登录 才能发表评论!