这个问题的近亲似乎在StackExchange上到处都是,但也许这就是为什么我找不到答案的原因…
我有一个申请。在应用程序中,我有几个不同的表面视图,每个都有几个不同的动作来启动一个对话框。
我的对话框由EditText(用于输入一些数据)和Set和Cancel按钮组成,用于操作该数据。要输入数据,用户首先触摸EditText以调出键盘,然后输入数据,触摸Done,然后触摸Set,然后应用程序继续其愉快的方式。
如果可能的话,我想找到一种方法来缩短这个。具体来说,我想跳过对话框视图,直接进入键盘视图。(本质上,我想通过编程"触摸"EditText,如果这有意义的话。)
就像我在开头说的,我运气不太好,所以任何建议都会很高兴地考虑。而且,不幸的是,简单地在EditText中请求焦点已经被尝试过了,并且没有做到这一点…
r .
试试这个
dialog.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
最简单和最好的方法是在打开对话框时将焦点放在EditText上:
EditText yourET = (EditText) findViewById(R.id.my_editText);
yourET.requestFocus();