如何在应用启动时显示键盘

时间:2013-02-01 08:55:02

标签: android keypad

作为我的应用程序的一部分,我希望在应用程序启动时显示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);

如果我做错了,或者有其他方法可以完成此功能,请告诉我。

提前致谢

3 个答案:

答案 0 :(得分: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);
}

答案 1 :(得分: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);

或者,如果您 在布局中<{1}}并且仍需要显示软键盘,请使用:

EditText

注意:对于第二种选择,this.getWindow().setSoftInputMode(LayoutParams.SOFT_INPUT_STATE_VISIBLE); 所需的导入是:LayoutParams

答案 2 :(得分:0)

您只需更改manifest.xml文件即可

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

查看this了解详情。

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