关于TextInputLayout几种颜色设置的方式

TextInputLayout的样式设置 
1、默认Hint颜色设置 
     直接在布局文件中设置  android:textColorHint=”@color/step_no_selete” 
2、顶部提示语的颜色 
  •  如果界面只需要设置一种颜色: 直接在你的主题中添加colorAccent属性,指定为你想要的颜色。 
  • 如果你需要特殊的颜色但又不想改主题颜色你可以给TextInputLayout一个theme属性,指向你的style文件,同样设置colorAccent属性 
 <style name="CustomAppTheme_textinputLayout" parent="Theme.AppCompat.Light.NoActionBar">

        <item name="colorAccent">#3498db</item>
        <item name="android:textColorHint">@color/alpha_white</item>
        <item name="colorControlNormal">@color/alpha_white</item>
        <item name="colorControlActivated">@color/white</item>
        <item name="colorControlHighlight">@color/white</item>
        <item name="android:windowTranslucentStatus">true</item>
    </style>

3、适配到5.0以下 

        如果你按上面说的在5.0之后使用是没有问题的,但是如果你要放在5.0以下的版本你会发现颜色并没有改变,这时候你需要给你当前activity单独指定一个theme了.

 
  <style name="CustomAppTheme_textinputLayout" parent="Theme.AppCompat.Light.NoActionBar">

        <!-- <item name="colorAccent">#3498db</item> -->
        <item name="android:textColorHint">@color/alpha_white</item>
        <item name="colorControlNormal">@color/alpha_white</item>
        <item name="colorControlActivated">@color/white</item>
        <item name="colorControlHighlight">@color/white</item>
        <item name="android:windowTranslucentStatus">true</item>
    </style>
   <activity
            android:name=".activity.login.LoginActivity"
            android:theme="@style/CustomAppTheme_textInputLayout">           
   </activity>
  • 长时间放后台运行再次回到界面即使没有使用TextInputLayout的error提示作用会发现线都变红了这时候你需要在代码中设置禁用

    TextInputLayout.setErrorEnabled(false);

  • 浮动hint改变size 

  • etc:
    style name=”TextLabel” parent=”TextAppearance.Design.Hint” 
    item name=”android:textSize”>14sp item 
    style

  app:hintTextAppearance="@style/TextLabel"
<style name="TextLabel" parent="TextAppearance.Design.Hint" >
        <item nname="android:textSize">14sp</item>
 </style>
参考: https://blog.csdn.net/qingdaohaoyunpeng/article/details/51915374

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android TextInputLayout是一个支持Material Design风格的输入框容器,它可以用来包装任何EditText或EditText的子类,提供了一些功能,如错误提示、计数器、密码可见性切换等。 TextInputLayout的主要功能有: 1.错误提示:当用户输入无效数据时,可以显示错误消息。 2.计数器:可以显示已输入字符的数量和最大字符数量。 3.密码可见性切换:可以在明文和密码模式之间切换。 4.动画效果:包含了一些动画效果,如标签浮动和错误消息上移等。 使用TextInputLayout,需要在XML中将EditText包装在TextInputLayout中,并在TextInputLayout设置相关属性。例如: ``` <com.google.android.material.textfield.TextInputLayout android:id="@+id/textInputLayout" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="Enter your name"> <com.google.android.material.textfield.TextInputEditText android:id="@+id/editText" android:layout_width="match_parent" android:layout_height="wrap_content"/> </com.google.android.material.textfield.TextInputLayout> ``` 在代码中,可以使用以下方法来设置错误消息、计数器等: ``` // 设置错误消息 textInputLayout.setError("Invalid input"); // 显示计数器 textInputLayout.setCounterEnabled(true); textInputLayout.setCounterMaxLength(50); // 密码可见性切换 textInputLayout.setEndIconMode(TextInputLayout.END_ICON_PASSWORD_TOGGLE); ``` 总之,TextInputLayout是一个非常有用的控件,可以提高Android应用程序的用户体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值