我正在为Android手机编写一个应用程序,在我的启动画面后,它显示了一个包含多个微调器和编辑文本视图的活动.
在没有键盘的Android设备上,它显示虚拟键盘,然后阻止应用程序的其余部分,看起来不专业.我试图在activity.onCreate方法中隐藏虚拟键盘但是没有用.
我尝试的下一个选项是将onFocus监听器设置为实际违规的edittext视图,但仍无济于事.
在用户明确单击edittext视图之前,如何阻止虚拟键盘显示?是否有一种方法可以给出一个微调器的焦点,因为其中一个微调器位于布局xml中的edittext视图之前?
你可以试试这个:
创建活动,将输入类型设置为TYPE_NULL.然后,onTouch将其设置为TYPE_CLASS_TEXT.
myText.setInputType(InputType.TYPE_NULL);
myText.setOnTouchListener(new View.OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
myText.setInputType(InputType.TYPE_CLASS_TEXT);
myText.onTouchEvent(event); // call native handler
return true; // consume touch even
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14065 次 |
| 最近记录: |