У меня есть EditText, заключенный в TextInputLayout. Я хочу отображать ошибки в EditText, но выравнивается в правый конец экрана.
Ошибка отображается следующим образом:
Что я хочу, чтобы он выглядел так:
Мой XML:
<android.support.design.widget.TextInputLayout
android:id="@+id/text_input_email"
style="@style/forgot_pass_text_inputlayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/tv_enter_email_message"
android:layout_marginTop="@dimen/email_padding_top"
android:hintTextAppearance="@{forgotPasswordVM.hintTextAppearance}"
android:theme="@style/forgot_pass_til_state"
app:error="@{forgotPasswordVM.email.textInputError}">
<EditText
android:id="@+id/actv_email"
style="@style/forgot_pass_edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/email_address"
android:imeActionId="@+id/btn_submit"
android:imeOptions="actionSend"
android:inputType="textEmailAddress"
android:maxLines="1"
android:onEditorAction="@{forgotPasswordVM.onEditorAction}"
android:singleLine="true"
app:binding="@{forgotPasswordVM.email.text}" />
</android.support.design.widget.TextInputLayout>
Я использую привязку данных.
Я попытался установить android:gravity="right"
и android:layout_gravity="right"
как в EditText, так и в TextInputLayout. Не работает так, как я хочу.
Я попытался установить правильную гравитацию в теме, а также в стиле. Не влияет на ошибку.
Я пробовал правильную гравитацию в стиле, который применяется в app:errorTextAppearance="@style/right_error"
. Даже это не работает.
Я попытался программно перевести ошибку вправо, используя SpannableStringBuilder с выравниванием по следующей ссылке эту ссылку. Даже это не работает для меня.
Я не уверен, что еще попробовать. Пожалуйста, предложите.