活动开始时显示软键盘
我有两个活动,A和B.当A开始时,它检查一个条件,如果是true,它会调用startActivityForResult()
来启动B. B只接受文本input,所以当软键盘自动popup时,B开始。 当活动开始时,EditText已经有焦点并准备好input。
问题是,键盘永远不会出现,即使windowSoftInputMode="stateAlwaysVisible"
设置在B的<activity>
标签下的清单中。我还尝试将值设置为stateVisible
。 由于它不会自动显示,我必须点击EditText才能显示。
任何人都知道解决scheme可能是什么?
在Android Manifest中,对于我来说最适合的方式是添加活动B.
android:windowSoftInputMode="stateVisible"
希望对你也有帮助。
最简单的解决scheme:放
android:windowSoftInputMode = "stateVisible"
在AndroidManifest.xml的Activity部分
如果在EditText上的requestFocus没有显示它,也许这将做到这一点:
InputMethodManager imm = (InputMethodManager)getSystemService( Context.INPUT_METHOD_SERVICE); imm.showSoftInput(mEditText, 0);
在这里寻找更多的信息。
对于我来说,只有这个解决scheme:为该活动添加清单:
android:windowSoftInputMode="stateVisible|adjustPan"
尝试类似这样的事情:
public void onResume() { super.onResume(); TimerTask tt = new TimerTask() { @Override public void run() { InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(yourTextBox, InputMethodManager.SHOW_IMPLICIT); } }; final Timer timer = new Timer(); timer.schedule(tt, 200); }
如果您正在使用模拟器,则必须closures硬键盘才能显示软键盘。