我不希望在触摸特定的EditText时出现软键盘。但我仍然希望能够根据用户请求显示软键盘(例如,按下按钮时)并允许用户编辑文本。 我知道如何显示/隐藏软键盘,我只是不知道如何防止它出现在触摸上。 有什么建议吗?
一般的想法是,用户将主要处理文本中的选择/位置,并且仅偶尔输入字符。 在选择或导航文本时,我不希望软键盘减少可见数量的文本。
答案 0 :(得分:3)
只需使用
txtEdit.setShowSoftInputOnFocus(false);
当你想启用它时,反转上面的过程
答案 1 :(得分:1)
这有效:
editText.setShowSoftInputOnFocus(false);
答案 2 :(得分:0)
在清单中的活动内添加以下代码
android:windowSoftInputMode =“adjustPan”
答案 3 :(得分:0)
AndroidManifest.xml windowSoftInputMode
<activity android:name=".MyActivity" android:windowSoftInputMode="adjustPan"> </activity>
答案 4 :(得分:0)
尝试下面的代码,它会隐藏键盘:
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN)
答案 5 :(得分:0)
为什么不禁用edittext。然后它不会在点击时显示键盘。你可以:
android:editable="false" //from xml
et.setEnabled(false); //from activity
然后在你的按钮上单击以使代码为true使其启用。并使您的键盘出现。
此外,如果您没有关注edittext,您可以:
et.requestFocus(); // from activity
<EditText
android:id="@+id/et1"
android:editable="false"
android:layout_width="150dp"
android:layout_height="wrap_content" >
<requestFocus/>
</EditText>
//来自xml
希望这有帮助!