自定义错误显示TextInputLayout
Custom Error display TextInputLayout
我在编辑文本中有错误处理的具体实现。有什么办法可以实现如下所示的效果。
我设法取得了几乎相似的结果。只剩下一部分是验证器。
如有任何帮助,我们将不胜感激
编辑 1: 附上帮助代码。
<android.support.design.widget.TextInputLayout
style="@style/FrameTextLayout"
android:layout_width="match_parent"
app:theme="@style/GreyHighlight">
<android.support.design.widget.TextInputEditText
android:id="@+id/fragment_sign_up_one.text_email"
style="@style/FrameEditText"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:hint="@string/email"
android:inputType="textEmailAddress" />
</android.support.design.widget.TextInputLayout>
values\styles 中的值。xml
<style name="GreyHighlight" parent="AppThemeNoAction">
<item name="colorControlNormal">@color/colorHeather</item>
<item name="colorControlActivated">@color/colorHeather</item>
<item name="textColorError">@color/colorHeather</item>
</style>
<style name="FrameTextLayout">
<item name="android:background">@drawable/border_background</item>
<item name="android:paddingTop">8dp</item>
<item name="android:layout_height">53dp</item>
<item name="android:layout_marginTop">16dp</item>
</style>
<style name="FrameEditText">
<item name="android:background">@android:color/transparent</item>
<item name="android:maxLines">1</item>
<item name="android:textSize">16.7sp</item>
<item name="android:textColor">@color/colorDarkIndigo</item>
<item name="android:paddingBottom">8dp</item>
<item name="android:paddingLeft">16dp</item>
<item name="android:paddingRight">16dp</item>
<item name="android:paddingTop">8dp</item>
</style>
另外在旁注中,我们如何在 TextInputLayout
中居中提示。附示例。
目前,
编辑 2: 通过在 TextInputLayout
.
上使用 app:hintEnabled="false"
,在不处于焦点时通过禁用提示来管理中心提示
所以我最终创建了一个自定义视图来满足我的需要。
如果有人感兴趣,我为它创建了一个库。
我在编辑文本中有错误处理的具体实现。有什么办法可以实现如下所示的效果。
我设法取得了几乎相似的结果。只剩下一部分是验证器。
如有任何帮助,我们将不胜感激
编辑 1: 附上帮助代码。
<android.support.design.widget.TextInputLayout
style="@style/FrameTextLayout"
android:layout_width="match_parent"
app:theme="@style/GreyHighlight">
<android.support.design.widget.TextInputEditText
android:id="@+id/fragment_sign_up_one.text_email"
style="@style/FrameEditText"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:hint="@string/email"
android:inputType="textEmailAddress" />
</android.support.design.widget.TextInputLayout>
values\styles 中的值。xml
<style name="GreyHighlight" parent="AppThemeNoAction">
<item name="colorControlNormal">@color/colorHeather</item>
<item name="colorControlActivated">@color/colorHeather</item>
<item name="textColorError">@color/colorHeather</item>
</style>
<style name="FrameTextLayout">
<item name="android:background">@drawable/border_background</item>
<item name="android:paddingTop">8dp</item>
<item name="android:layout_height">53dp</item>
<item name="android:layout_marginTop">16dp</item>
</style>
<style name="FrameEditText">
<item name="android:background">@android:color/transparent</item>
<item name="android:maxLines">1</item>
<item name="android:textSize">16.7sp</item>
<item name="android:textColor">@color/colorDarkIndigo</item>
<item name="android:paddingBottom">8dp</item>
<item name="android:paddingLeft">16dp</item>
<item name="android:paddingRight">16dp</item>
<item name="android:paddingTop">8dp</item>
</style>
另外在旁注中,我们如何在 TextInputLayout
中居中提示。附示例。
目前,
编辑 2: 通过在 TextInputLayout
.
app:hintEnabled="false"
,在不处于焦点时通过禁用提示来管理中心提示
所以我最终创建了一个自定义视图来满足我的需要。 如果有人感兴趣,我为它创建了一个库。