5

MainActivity レイアウトに 2 つの EditText があります。アプリケーションを正常に実行すると、最初の EditText がフォーカスされますが、ソフトキーボードは開かれません。

しかし、私がこれを使用したとき:

public class TestingActivity extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        EditText et1 = (EditText) findViewById(R.id.editText1);
        EditText et2 = (EditText) findViewById(R.id.editText2);

        et2.requestFocus();
        InputMethodManager mInputMethodManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
        mInputMethodManager.showSoftInput(et2, InputMethodManager.SHOW_IMPLICIT);
    }
}

2 番目の EditText がフォーカスされ、ソフトキーボードが開かれることを期待しています。

フォーカスを取得するだけですが、EditText をクリックしたときにのみソフトキーボードが開きます。

ありがとうございました

4

5 に答える 5

7

アクティビティのファイルにandroid:windowSoftInputMode属性を指定してみてください。AndroidManifest.xml

例えば:

<activity android:name=".TestingActivity" android:windowSoftInputMode="stateVisible|adjustResize" />

InputMethodManagerアクティビティで使用するコードはおそらく必要ありません。

于 2012-09-28T13:55:52.550 に答える
2

キーボードが表示されない理由の 1 つは、特定の Android デバイスでサポートされていない入力タイプを選択していることに気付きました。たとえば、InputType.TYPE_NUMBER_VARIATION_NORMAL は私の Asus Transformer では機能しません (キーボードが表示されません) が、InputType.TYPE_CLASS_NUMBER は正常に機能します。

于 2013-07-23T07:19:37.927 に答える
-2

特定の編集テキストに焦点を当てるには、編集テキスト内にタグを追加するだけです。

<EditText 
    android:id="@+id/etBox"
    android:layout_height="wrap_content"
    android:layout_width="fill_parent"
    android:hint="enter into editbox"
    >
    <requestFocus/>
    </EditText>
于 2013-04-29T09:42:14.077 に答える