如何在出错时将edittext边框颜色更改为红色?

时间:2018-01-05 07:51:40

标签: android android-edittext

所以编辑文本框边框应该在图片中更改为红色,在错误发生时以及输入的文本为空时进行验证。

enter image description here

1 个答案:

答案 0 :(得分:0)

像这样创建两个单独的背景

错误背景

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">


    <solid android:color="#ffffff" />
    <stroke android:width="1dp" android:color="#ff00" />
    <corners android:radius="5dp" />

</shape>

正常背景

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">


    <solid android:color="#ffffff" />
    <stroke
        android:width="1dp"
        android:color="#0059ff" />
    <corners android:radius="5dp" />

</shape>

试试这个

    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            if(edittext.getText().toString().isEmpty()){
                edittext.setError("error");
                edittext.setBackgroundResource(R.drawable.edterr);
            }else {
                edittext.setBackgroundResource(R.drawable.edtnormal);
            }
        }
    });