如何在android中更改setError()的背景颜色

时间:2016-12-22 07:31:58

标签: android

如何更改setError()方法的背景,我用它来显示textview中发生的任何错误。我可以更改我的字体颜色,但不能更改背景颜色。

enter image description here

我的java文件:

公共类测试扩展了AppCompatActivity {

EditText name,email,pass;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_testing);
    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);

    name = (EditText)findViewById(R.id.input_name);
    email = (EditText)findViewById(R.id.input_email);
    pass = (EditText)findViewById(R.id.input_password);

    name.setError("Your name should not contain empty space");
}

}

1 个答案:

答案 0 :(得分:-1)

使用此android.support.design.widget.TextInputLayout。 这可以在Edittext下面显示以下错误。因此您可以在新number中轻松编写下一个内容,例如passwordEdittext

以下是xml代码:

<LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="match_parent"
        android:layout_marginTop="?attr/actionBarSize"
        android:orientation="vertical"
        android:paddingLeft="20dp"
        android:paddingRight="20dp"
        android:paddingTop="60dp">

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

            <EditText
                android:id="@+id/input_name"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:singleLine="true"
                android:hint="@string/hint_name" />
        </android.support.design.widget.TextInputLayout>

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

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

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

            <EditText
                android:id="@+id/input_password"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:inputType="textPassword"
                android:hint="@string/hint_password" />
        </android.support.design.widget.TextInputLayout>
</LinearLayout>

让我们看看ScreenShot了解。

清空编辑文字

enter image description here

错误消息 Edittext

enter image description here

有关详细信息,请参阅我的答案: How to make edit text error position in android?