我有一个 TextInputLayout,里面有一个 EditText。
这是我的xml:
<android.support.design.widget.TextInputLayout
android:id="@+id/textInputLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<EditText
android:id="@+id/editText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:hint="Enter Text" />
</android.support.design.widget.TextInputLayout>
我的java代码:
((TextInputLayout) findViewById(R.id.textInputLayout)).setError("ERROR");
当我调用setError("ERROR")时,标签(提示)颜色和 EditText 的底线颜色变为红色并出现错误。这是我所期望的行为。
现在假设我在销毁我的活动之前不调用setError(null) 。现在我再次打开相同的活动。我可以看到我的应用程序中所有 EditText 字段的底线都保持红色,尽管标签颜色似乎已重置并且错误消息已被忽略。这并不总是可重现的,但如果我继续尝试,我最终会得到它。
我正在使用带有 5.1.1 的 Nexus 4。
难道我做错了什么?