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レイアウトにがある場合は、これを使用します。

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);

注: 2 番目の選択肢の場合、必要なインポートLayoutParamsは次のとおりです。import android.view.WindowManager.LayoutParams;

于 2013-02-01T09:04:03.103 に答える
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 に答える