为了账号安全,请及时绑定邮箱和手机立即绑定

停止EditText在活动启动时获得焦点

停止EditText在活动启动时获得焦点

婷婷同学_ 2019-06-01 16:30:07
停止EditText在活动启动时获得焦点我有一个Activity在Android中,有两个元素:EditTextListView当我Activity开始,EditText立即有输入焦点(闪烁光标)。我不希望任何控制在启动时有输入焦点。我试过:EditText.setSelected(false);没有运气。我怎么才能说服EditText控件时不选择它自己。Activity开始?
查看完整描述

4 回答

?
慕标琳琳

TA贡献1830条经验 获得超9个赞

然而,来自Luc和Mark的优秀答案缺少一个好的代码示例。添加标记android:focusableInTouchMode="true"<LinearLayout>与下面的示例一样,将解决问题。

<!-- 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"/>


查看完整回答
反对 回复 2019-06-01
?
慕姐4208626

TA贡献1852条经验 获得超7个赞

真正的问题是你根本不想让它有焦点吗?或者,您不希望它显示虚拟键盘,这是因为将EditText?我看不出有什么问题EditText关注开始,但当用户没有显式请求将焦点放在EditText(结果是打开键盘)。

如果这是虚拟键盘的问题,请参见AndroidManifest.xml <activity> element文件。

android:windowSoftInputMode="stateHidden"-进入活动时一定要把它藏起来。

android:windowSoftInputMode="stateUnchanged"-不要改变(例如不要改变)如果它尚未显示,但如果它在进入该活动时是打开的,则将其保留为打开)。


查看完整回答
反对 回复 2019-06-01
?
一只名叫tom的猫

TA贡献1906条经验 获得超3个赞

我找到的唯一解决办法是:

EditText在活动开始后就得不到焦点了


查看完整回答
反对 回复 2019-06-01
  • 4 回答
  • 0 关注
  • 514 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信