在我的Android应用程序中,它自动聚焦我的布局中的第一个按钮,给它一个橙色轮廓。如何最好用XML设置初始焦点,这可以设置为空吗?
答案 0 :(得分:153)
您可以使用requestFocus
代码:
<Button ...>
<requestFocus />
</Button>
我觉得奇怪的是,它会自动聚焦你的一个按钮,我没有在我的任何视图中观察到这种行为。
答案 1 :(得分:58)
@Someone在某个地方,我尝试了以上所有方面都无济于事。我找到的修复程序来自http://www.helloandroid.com/tutorials/remove-autofocus-edittext-android。基本上,您需要在有问题的Button上方创建一个不可见的布局:
<LinearLayout android:focusable="true"
android:focusableInTouchMode="true"
android:layout_width="0px"
android:layout_height="0px" >
<requestFocus />
</LinearLayout>
答案 2 :(得分:24)
将:focusable
和:focusableInTouchMode
都设为true并致电requestFocus
。这样做。
答案 3 :(得分:22)
我发现这对我来说效果最好。
在AndroidManifest.xml <activity> element
中添加android:windowSoftInputMode="stateHidden"
进入活动时,这总是隐藏键盘。
答案 4 :(得分:11)
我只是将这行代码添加到onCreate()
:
this.getWindow().setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
问题解决了。
答案 5 :(得分:7)
使用以下代码
TableRow _tableRow =(TableRow)findViewById(R.id.tableRowMainBody);
tableRow.requestFocus();
应该有用。
答案 6 :(得分:3)
@ Someone我用它来清除焦点:
editText.clearFocus();
它有帮助
答案 7 :(得分:0)
android:focusedByDefault="true"