我在我的应用程序中禁用了softkeypad,因为我有自己的自定义键盘。但问题是,当我点击edittexts以通过我的自定义键盘输入数据时,该edittexts根本没有突出显示。甚至光标在相应的单击的edittext中也不可见。为什么在禁用软键盘时总有副作用?我尝试了包括stackoverflow在内的所有建议,但没有任何效果。我可以获得完美的解决方案,以便在点击时突出显示edittext吗?
答案 0 :(得分:1)
点击textView.requestFocus()
时,editText
可以突出显示
也不要忘记添加 XML文件
此属性android:focusableInTouchMode="true"
到您的EditText
答案 1 :(得分:1)
我不知道为什么会出现这些副作用,但在this post中有一种解决方法,如何禁用键盘并仍然拥有光标。这对我有用,除了我还需要请求焦点,所以它是:
//disable keypad
et.setOnTouchListener(new OnTouchListener(){
@Override
public boolean onTouch(View v, MotionEvent event) {
int inType = et.getInputType(); // backup the input type
et.setInputType(InputType.TYPE_NULL); // disable soft input
et.onTouchEvent(event); // call native handler
et.setInputType(inType); // restore input type
et.requestFocus(); // request focus
return true; // consume touch even
}
});