我的应用程序中有三个屏幕,每个屏幕有 3 个 editText。我的问题是,当这些活动启动时,默认情况下光标会转到第一个编辑文本并且键盘会弹出。
我想要的是,当用户点击编辑框时,只有键盘应该弹出。
提前致谢,
苏迪尔
我的应用程序中有三个屏幕,每个屏幕有 3 个 editText。我的问题是,当这些活动启动时,默认情况下光标会转到第一个编辑文本并且键盘会弹出。
我想要的是,当用户点击编辑框时,只有键盘应该弹出。
提前致谢,
苏迪尔
首先在您的 xml 文件中测试您可能在编辑文本中将这一行<requestFocus />
删除,这是一些可以帮助您的
示例示例链接
<EditText
android:id="@+id/name"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>
<-- remove this line /// <requestFocus />
</EditText>
也将其添加到您的活动中
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
在您的 layout.xml 中,删除此行(在 EditText 的底部):
<requestFocus />
最好的解决方案是:(在清单文件中)
<activity android:name=".MainActivity"
android:windowSoftInputMode="stateHidden" />
试试这个,添加windowSoftInputMode
所有活动,它将避免键盘弹出。当你触摸EditText
那个时间只出现
android:windowSoftInputMode="stateHidden|adjustPan"
将此代码放入您的 oncreate() 方法中。
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
}