gpt4 book ai didi

android - setError 连同 onClick 用于 EditText

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:00:47 27 4
gpt4 key购买 nike

使用 setError() 方法显示的正常错误:

Screenshot #1

问题:

Screenshot #2

好的,所以我在同一个对话框中有另一个 EditText,它有一个 OnClickListener 用于显示 DatePicker 对话框。当我 setError() 它显示红色警报图标时,当我单击该图标时,该事件仍由 EditText 上的 OnClick 处理,并且DatePicker 弹出,因此我无法查看错误消息。

我想要的:如果我点击图标,它必须显示错误消息,如果我在图标外点击它应该显示 DatePicker

最佳答案

天哪,我 2 天前确实遇到过这个问题。我发现没有办法让它既有焦点(为了显示消息,也创建日期选择器的弹出窗口。我最终做的是将 EditText 包装到 TextInputLayout 像这样:

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

<EditText
android:id="@+id/input_birth_date"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/birth_date_hint"
android:inputType="date" />
</android.support.design.widget.TextInputLayout>

然后我没有在编辑文本上设置错误,而是在 TextInputLayout 上设置错误,而不是像这样:

birthDateInputLayout.setErrorEnabled(true);
birthDateInputLayout.setError("This field cannot be empty.");

NOTE: It does not look exactly the same as the regular way of setting error on EditText, but it does look nice enough and solves the problem a bit differently.

这是它的外观截图: enter image description here

关于android - setError 连同 onClick 用于 EditText,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46115833/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com