活动开始时显示软键盘

我有两个活动,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硬键盘才能显示软键盘。