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