当用户没有关注该editText时,显示EditText错误

时间:2016-11-28 16:08:25

标签: android android-edittext

我有一个editText,当前显示错误弹出窗口。

editText.setError("你做错了什么");

现在我需要一个工作流程,当用户点击其他地方的按钮时,我需要在editText上设置错误。但是现在,只显示一个错误图标。

我的问题是,是否有可能让它显示整个错误文本而用户实际上没有点击(聚焦)它?

2 个答案:

答案 0 :(得分:3)

解决方案1 ​​

呼叫

editText.requestFocus()

在设置错误之前。

解决方案2

使用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");

解决方案3

自定义视图,由您决定。

答案 1 :(得分:1)

我使用那个库MaterialEditText,这使得一切变得更加简单...... wiki page中的所有内容都得到了很好的解释。

帮助文字和错误文字

帮助文字:

app:met_helperText="Integer"

错误文字:

在java代码中使用原始setError(CharSequence错误)。

正则表达式检查:

validationEditText.isValid("\\d+");

正则表达式验证错误文本设置:

validationEditText.validate("\\d+", "Only Integer Valid!");