Tôi có một vài EditTexts trải rộng thành 2 đoạn. Một trong những mảnh vỡ có cách bố trí sau xml:Android EditText tập trung tiếp theo
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin" >
<TextView
android:id="@+id/title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/cool_button"
android:gravity="center"
android:text="@string/user_account"
android:textAppearance="?android:attr/textAppearanceMediumInverse" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@color/yellow"
android:gravity="center"
android:padding="10dp"
android:text="@string/registration_description1"
android:textAppearance="?android:attr/textAppearanceSmall" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.4"
android:text="@string/email_address"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textStyle="bold" />
<EditText
android:id="@+id/et_email_address"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.6"
android:ems="10"
android:hint="@string/required"
android:inputType="textEmailAddress" >
</EditText>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.4"
android:gravity="center_vertical"
android:text="@string/email_address_confirmation"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textStyle="bold" />
<EditText
android:id="@+id/et_email_address_confirm"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.6"
android:ems="10"
android:hint="@string/required"
android:inputType="textEmailAddress" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/tv_title"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.4"
android:text="@string/title"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textStyle="bold" />
<Spinner
android:id="@+id/sp_title"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.6"
tools:listitem="@android:layout/simple_spinner_dropdown_item" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.4"
android:text="@string/first_name"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textStyle="bold" />
<EditText
android:id="@+id/et_first_name"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.6"
android:ems="10"
android:hint="@string/required"
android:inputType="textCapWords" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.4"
android:text="@string/surname"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textStyle="bold" />
<EditText
android:id="@+id/et_surname"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.6"
android:ems="10"
android:hint="@string/required"
android:imeOptions="actionDone"
android:inputType="textCapWords" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
Và cách bố trí khác:
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:isScrollContainer="false"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<TextView
android:id="@+id/title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/cool_button"
android:gravity="center"
android:text="@string/title_fragment_register_business_and_contact_details"
android:textAppearance="?android:attr/textAppearanceMediumInverse" />
<TableLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="wrap_content"
android:text="@string/business_name"
android:textStyle="bold" />
<EditText
android:id="@+id/et_business_name"
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="wrap_content"
android:hint="@string/required"
android:inputType="textCapWords" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="match_parent"
android:gravity="center_vertical"
android:text="@string/street_name_and_number"
android:textStyle="bold" />
<EditText
android:id="@+id/et_street1"
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="match_parent"
android:hint="@string/required"
android:inputType="textCapWords" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="wrap_content"
android:text="@string/street2_bigger"
android:textStyle="bold" />
<EditText
android:id="@+id/et_street2"
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="wrap_content"
android:inputType="textCapWords" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="wrap_content"
android:text="@string/street3_bigger"
android:textStyle="bold" />
<EditText
android:id="@+id/et_street3"
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="wrap_content"
android:inputType="textCapWords" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="wrap_content"
android:text="@string/street4_bigger"
android:textStyle="bold" />
<EditText
android:id="@+id/et_street4"
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="wrap_content"
android:inputType="textCapWords" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="wrap_content"
android:text="@string/town_or_city"
android:textStyle="bold" />
<EditText
android:id="@+id/et_town"
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="wrap_content"
android:hint="@string/required"
android:inputType="textCapWords"
android:nextFocusDown="@+id/et_county" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="wrap_content"
android:text="@string/county"
android:textStyle="bold" />
<EditText
android:id="@+id/et_county"
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="wrap_content"
android:hint="@string/required"
android:inputType="textCapWords" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:layout_marginTop="10dp" >
<TextView
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="wrap_content"
android:text="@string/country"
android:textStyle="bold" />
<TextView
android:id="@+id/textView1"
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="wrap_content"
android:text="@string/united_kingdom" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="wrap_content"
android:text="@string/postcode"
android:textStyle="bold" />
<EditText
android:id="@+id/et_postcode"
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="wrap_content"
android:hint="@string/required"
android:inputType="textCapCharacters" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="wrap_content"
android:text="@string/business_tel"
android:textStyle="bold" />
<EditText
android:id="@+id/et_business_tel"
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="wrap_content"
android:hint="@string/required"
android:imeOptions="actionNext"
android:nextFocusDown="@+id/et_business_email"
android:inputType="phone" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="wrap_content"
android:text="@string/business_email"
android:textStyle="bold" />
<EditText
android:id="@+id/et_business_email"
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="wrap_content"
android:imeOptions="actionNext"
android:inputType="textEmailAddress"
android:nextFocusDown="@+id/et_website" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="wrap_content"
android:text="@string/website"
android:textStyle="bold" />
<EditText
android:id="@+id/et_website"
android:layout_width="0dp"
android:layout_weight="0.5"
android:layout_height="wrap_content"
android:imeOptions="actionDone"
android:inputType="textWebEditText" >
</EditText>
</TableRow>
</TableLayout>
</LinearLayout>
</ScrollView>
Khi tôi bấm tiếp theo trên et_business_tel, nó đi vào các mảnh vỡ khác EditText. Đôi khi nó đi vào et_email_address_confirm, những người khác nó đi đến et_first_name. Điều này cũng xảy ra trong et_business_email. Tôi đã thử android: nextFocusDown nhưng có vẻ như nó không hoạt động. Tôi có làm điều gì sai hay có cách nào để chỉ nút tiếp theo để tập trung vào editText tiếp theo không?
tôi đã không kiểm tra này kể từ khi tôi tìm thấy câu trả lời của riêng tôi. Nhưng cảm ơn anyways. –