禁用多个edittexts键盘
我有一个应用程序,它将meters
转换为centimeters
,简单,对不对?禁用多个edittexts键盘
所以我有两个部分。一个是键盘,另一个是两个edittext
盒子。
我正在使用我自己的键盘,所以没有安卓键盘显示的感觉。
我看了各种答案,他们似乎并没有为我工作。
This问题问同样的事情,我实现了选定的答案,但edittexts行为怪异。
首先一个似乎工作,因为我想它的工作,但不知其他文本不会来的焦点。
我尝试点击它并没有任何反应。重点不会从第一个开始。
我试图
findViewById(R.id.lengthConverterSecond).setOnTouchListener(this); findViewById(R.id.lengthConverterFirst).setOnTouchListener(this);
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
return true;
}
什么了这个怪异的行为?
什么是解决我的上述问题?
更新
试过这种tooo。
万一
findViewById(R.id.lengthConverterSecond).setOnFocusChangeListener(this); findViewById(R.id.lengthConverterFirst).setOnFocusChangeListener(this); @Override
public void onFocusChange(View view, boolean b) {
if(b){
InputMethodManager im=(InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
assert im != null;
im.hideSoftInputFromWindow(view.getWindowToken(),0);
}
}
这并不在所有的工作,就像它不会隐藏键盘但怪异的行为我上面看到,现在不发生。
回答:
为minSdk = 8,maxSdk = 23
<EditText android:id="@+id/editText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="false"
android:focusableInTouchMode="false"/>
的API 21或者如果你有两个编辑文本(假设editText1和editText2)> 21
,并要使用自己的自定义键盘然后使用此解决方案。
EditText editText1 = findViewById(R.id.editText1); EditText editText2 = findViewById(R.id.editText2);
editText1.setShowSoftInputOnFocus(false); // add this if you dont want default keyboard when you tap on editText1.
editText2.setShowSoftInputOnFocus(false);// add this if you dont want default keyboard when you tap on editText2.
这里
以上是 禁用多个edittexts键盘 的全部内容, 来源链接: utcz.com/qa/257540.html