错误图标未显示在所有EditText字段中

时间:2017-03-21 08:48:43

标签: android

我正在尝试在编辑文本中显示错误图标并尝试下面的代码,但它并未在所有编辑文本字段中显示错误图标。

txtEmailAddess.requestFocus();
txtEmailAddess.setError(result.getEmailAddressMessage());
txtPassword.requestFocus();
txtPassword.setError(result.getPasswordMessage());

在下面的屏幕截图中,它只在密码字段中显示错误图标。但不在电子邮件地址字段中。是否可以在两个字段中显示红色圆形图标?

enter image description here

Xml中的代码

<android.support.design.widget.TextInputLayout
    android:id="@+id/lblEmailAddress_login"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">
    <EditText
        android:id="@+id/txtEmailAddress"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/hint_email"
        android:inputType="textEmailAddress" />
</android.support.design.widget.TextInputLayout>

<android.support.design.widget.TextInputLayout
    android:id="@+id/lblPassword_login"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_below="@id/lblEmailAddress_login">
    <EditText
        android:id="@+id/txtPassword"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="45dp"
        android:hint="@string/hint_password"
        android:inputType="textPassword" />
</android.support.design.widget.TextInputLayout>

4 个答案:

答案 0 :(得分:1)

使用TextInputLayout

<android.support.design.widget.TextInputLayout
    android:id="@+id/text_input_layout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"/>
</android.support.design.widget.TextInputLayout>

使用以下方式设置错误:

textInputLayout.setError("Error occurs");

答案 1 :(得分:0)

使用if else来设置文本字段中的错误,而不是请求关注文本字段的每个项目

答案 2 :(得分:0)

答案 3 :(得分:0)

是的,在我的回答中你必须使用if else条件的每个文本字段