リソースファイル上での選択状態の設定
EditTextをレイアウトのリソースファイルで定義しているのであれば、EditTextタグに<requestfocus>を追加することでアプリ起動時にそのEditTextが選択された状態になります。サンプルとして、LinearLayoutで3つのEditTextを表示し、アプリ起動時に2番目のテキストボックスを選択するプログラムを作りました。
関連:LinearLayoutで4つのボタンを表示する
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:orientation="vertical">
<EditText
android:id="@+id/edit_texit_1"
android:layout_height="wrap_content"
android:layout_width="fill_parent/">
<EditText
android:id="@+id/edit_text_2"
android:layout_height="wrap_content"
android:layout_width="fill_parent">
<requestFocus/>
</EditText>
<EditText
android:id="@+id/edit_text_3"
android:layout_height="wrap_content"
android:layout_width="fill_parent/">
</LinearLayout>
EditTextTest.java
package sgl.example.edittext;
import android.app.Activity;
import android.os.Bundle;
import android.view.Window;
import android.widget.EditText;
public class EditTextTest extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.main);
//((EditText)findViewById(R.id.edit_texit_1)).requestFocus();
}
}
ちなみに、edit_text_2とedit_text_3に
コード上での選択状態の設定
EditTextのrequestFocusメソッドを呼び出すことで、呼び出したEditTextを選択状態にします。上記のEditTextTest.java中のコメントアウトを外すとEditText1が選択状態になります。
0 件のコメント:
コメントを投稿