0

作为我的应用程序的一部分,我希望在应用程序启动时显示 android 默认键盘,我从论坛获得了以下代码,但它不起作用。

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    InputMethodManager imm;
    imm = = (InputMethodManager) gettSystemService(Context.INPUT_METHOD_SERVICE);
    imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, inputMethodManager.HIDE_IMPLICIT_ONLY);

请让我知道,如果我做错了什么,或者是否有任何其他方式来完成该功能。

提前致谢

4

3 回答 3

0

你只需要改变你的manifest.xml文件

<activity android:name=".MyActivity"
android:label="@string/app_name"
android:windowSoftInputMode="stateAlwaysVisible" />

看看这个了解详情。

通过执行此设备的键盘将在加载应用程序时打开。

于 2013-02-01T09:14:56.907 回答
0

我正在做类似的事情。但它需要布局中的 EditText。

private EditText editText;

void showKeyboard() {
    this.editText.requestFocus();
    InputMethodManager mgr = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
    mgr.showSoftInput(this.editText, InputMethodManager.SHOW_IMPLICIT);
}
于 2013-02-01T08:59:46.153 回答
0

如果你有一个EditText布局,使用这个:

EditText editText = (EditText) findViewById(R.id.editText);
editText.requestFocus();
InputMethodManager mgr = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
mgr.showSoftInput(editText, InputMethodManager.SHOW_IMPLICIT);

或者,如果您在布局中没有并且EditText仍需要显示软键盘,请使用以下命令:

this.getWindow().setSoftInputMode(LayoutParams.SOFT_INPUT_STATE_VISIBLE);

注意:对于第二种选择,所需的导入LayoutParams是:import android.view.WindowManager.LayoutParams;

于 2013-02-01T09:04:03.103 回答