我正在使用材料设计中的浮动提示。我希望将焦点从一个EditText转移到下一个,所以我放了imeOptions =" actionNext"在所有editTexts和imeOptions =" actionDone"在最后一个EditText中。 但重点不是转移到下一个EditText。 以下是我的xml的片段。
<android.support.design.widget.TextInputLayout
android:id="@+id/streetWrapper"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/TextInputStyle"
>
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Street/Locality *"
android:imeOptions="actionNext"
android:maxLines="1"
/>
</android.support.design.widget.TextInputLayout>
<android.support.design.widget.TextInputLayout
android:id="@+id/flatWrapper"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/_10sdp"
android:theme="@style/TextInputStyle">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Building Name / Flat Number*"
android:imeOptions="actionNext"
android:maxLines="1"
/>
</android.support.design.widget.TextInputLayout>
答案 0 :(得分:14)
您应该在 android:imeOptions="actionNext"
部分添加 EditText
。
<android.support.design.widget.TextInputLayout
android:id="@+id/streetWrapper"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/TextInputStyle"
>
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:imeOptions="actionNext"
android:maxLines="1"
android:inputType="text"
/>
</android.support.design.widget.TextInputLayout>
答案 1 :(得分:3)
将属性android:inputType="text"
添加到EditText
。
试试这个:
<android.support.design.widget.TextInputLayout
android:id="@+id/streetWrapper"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Street/Locality *"
android:imeOptions="actionNext"
android:maxLines="1"
android:inputType="text"/>
</android.support.design.widget.TextInputLayout>
<android.support.design.widget.TextInputLayout
android:id="@+id/flatWrapper"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/_10sdp">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Building Name / Flat Number*"
android:imeOptions="actionNext"
android:maxLines="1"
android:inputType="text"/>
</android.support.design.widget.TextInputLayout>
答案 2 :(得分:1)
您应在标签部分添加 android:inputType =“ text”
如果不添加inputType,则imeOption不起作用
尝试一下:
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dimens_16dp">
<android.support.design.widget.TextInputEditText
android:id="@+id/et_impian"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/text_fill_your_dream_here"
android:imeOptions="actionNext"
android:inputType="text"
android:backgroundTint="@color/color_green_manulife"/>
</android.support.design.widget.TextInputLayout>
答案 3 :(得分:0)
就我而言,我还必须添加android:nextFocusForward="@id/secondInput"
。确保您在TextInputEditText
而不是TextInputLayout
上添加ID。
<com.google.android.material.textfield.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="First input">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/firstInput"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:imeOptions="actionNext"
android:inputType="number"
android:nextFocusForward="@id/secondInput">
<requestFocus />
</com.google.android.material.textfield.TextInputEditText>
</com.google.android.material.textfield.TextInputLayout>
<com.google.android.material.textfield.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Second input">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/secondInput"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:imeOptions="actionDone"
android:inputType="text"
android:maxLines="1" />
</com.google.android.material.textfield.TextInputLayout>