0

アクティビティが読み込まれ、ソフトキーボードが表示されたときに、特定の編集ボックスにフォーカスを当てることをすぐに強調表示したいと思います。これどうやってするの?また、onStart() には何かあるはずですか?

4

4 に答える 4

0

あなたのレイアウト</requestFocus>でタグを中に入れてくださいEditText

onStart()通話中

getDialog().getWindow().setSoftInputMode(LayoutParams.SOFT_INPUT_STATE_VISIBLE);
于 2012-07-06T21:01:49.720 に答える
0

理想的には、これでうまくいくはずです。

 <EditText
                android:id="@+id/Abc"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content">
                <requestFocus />
            </EditText>

ただし、キーボードがポップアップしないという既知の問題がいくつかあります。これを参照してください。

Runnable を使用してこれを行うこともできます。

public class MyActivity extends Activity {
 private Handler mHandler= new Handler();
    @Override
    protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            // get text
                mHandler.post(new Runnable() {
            public void run() {
                text.requestFocus();                

            }
        });

        }
} 
于 2012-07-06T21:01:54.743 に答える
0

findViewByID() を実行した後、ビューで requestFocus() を呼び出すことができます

onStart でそれを行うことができます - 動作しない理由がわかりました。

ここもチェックしてください:

http://developer.android.com/reference/android/view/View.html

于 2012-07-06T20:59:13.740 に答える
0

を使用してgetSystemService(...)、この場合は を取得できContext.INPUT_METHOD_SERVICEます。以下のコード サンプルを参照してください。

InputMethodManager imm = (InputMethodManager)context.getSystemService(
                            Context.INPUT_METHOD_SERVICE);

imm.showSoftInput(edittext, 0, null);
于 2012-07-06T20:59:36.383 に答える