1
我有一个应用程序,它将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);
}
}
这并不在所有的工作,就像它不会隐藏键盘但怪异的行为我上面看到,现在不发生。
以下API级21不会工作,我的是16(分钟) –
加入用于minSdk = 8和maxSdk = 23太勾选更新的代码 – Thunder
'公共布尔onTouch(查看图,MotionEvent motionEvent ){ switch(view.getId()){case} R.id.lengthConverterFirst:{ view.requestFocus(); } case R.id.lengthConverterSecond:{ view.requestFocus(); } } return true; } –