6
我在屏幕上顯示以下項目:Android的 - 將焦點設置的EditText微調選擇後
EditText Forename
Spinner gender selection (Male | Female)
EditText Email
當應用程序第一次運行,我想重點就錄名字的EditText設置。然後,在Spinner中選擇「男性」或「女性」後,我想要在位於微調器下方的電子郵件編輯文本中設置焦點。
我已經使用setOnItemSelectedListener
設置上的電子郵件的EditText的requestFocus
,但問題是,它會自動將焦點 這個EditText上,每當我啓動應用程序。 發生這種情況的原因是,默認情況下,微調器會顯示第一個選擇,在本例中爲「男性」,因此它認爲 已做出選擇,並將焦點設置在電子郵件字段上。
我不介意在默認情況下第一個選擇已被選擇在微調,但如果我可以以某種方式覆蓋requestFocus
設置在 Forename EditText最初會很好。
XML:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/LinearLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<EditText
android:id="@+id/ForenameForm"
android:layout_width="285dp"
android:layout_height="65dp"
android:hint="@string/forenameHint"
android:lines="1"
android:singleLine="true"
android:textSize="20sp" >
</EditText>
<Spinner
android:id="@+id/SpinnerGender"
android:spinnerMode="dialog"
android:textSize="30sp"
android:layout_width="285dp"
android:layout_height="60dp"
android:prompt="@string/spinnerGender"
android:entries="@array/genderList">
</Spinner>
<EditText
android:id="@+id/EmailForm"
android:layout_width="285dp"
android:layout_height="65dp"
android:hint="@string/emailHint"
android:lines="1"
android:singleLine="true"
android:textSize="20sp" >
</EditText>
</LinearLayout>
活動類:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final EditText forename=(EditText)findViewById(R.id.ForenameForm);
forename.requestFocus();
final EditText email=(EditText)findViewById(R.id.EmailForm);
Spinner spinner=(Spinner)findViewById(R.id.SpinnerGender);
spinner.setFocusable(true);
spinner.setFocusableInTouchMode(true);
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener()
{
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {
email.requestFocus();
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
}
});
}
這是完美的!感謝您的幫助,StinePike – Alex 2013-04-23 22:13:35
歡迎您:) – stinepike 2013-04-23 22:14:57
它真的是處理'onItemSelected'的Android方式嗎?我怎樣才能開始一個沒有選擇項目的活動? – 2015-01-27 10:04:35