EditText 下划线下方的文本属性

9 浏览
0 Comments

EditText 下划线下方的文本属性

我想要改变编辑文本框下方的蓝色,但我不知道它对应的属性。

我尝试使用不同的背景颜色,但没有成功。

我在下面附上了一张图片:

enter image description here

0
0 Comments

问题出现的原因:

使用android:backgroundTint属性来设置EditText下划线的颜色,但是该属性只在API 21及以上的版本上有效,不支持向后兼容。

解决方法:

1. 对于API小于21的设备,可以使用支持库中的AppCompatEditText,并使用app:backgroundTint属性来设置下划线的颜色。

2. 在API小于21的设备上,可以使用android:background属性来设置下划线的颜色。

3. 为了使android:backgroundTint属性在API 21以下的版本上生效,需要使用app命名空间而不是android命名空间。

以下是一种解决方法:

在EditText的xml布局中,使用android:backgroundTint=""属性来设置下划线的颜色。对于API小于21的设备,使用AppCompatEditText,并使用app:backgroundTint=""属性来设置下划线的颜色。确保在API 21以下的版本中,使用了app命名空间而不是android命名空间。

参考链接:http://stackoverflow.com/a/40889531/1276636

0
0 Comments

问题:EditText文本下方出现下划线的原因以及解决方法

原因:在EditText的每个状态(焦点、启用、激活)下,需要使用不同的背景图像而非颜色。

解决方法:

1. 访问网站http://android-holo-colors.com/,可以获取Holo主题中许多组件的图像。选择“EditText”和所需的颜色,在页面底部可以预览。

2. 下载.zip文件,并将资源(图像和XML文件)复制粘贴到项目中。

3. 如果XML文件名为:apptheme_edit_text_holo_light.xml(或类似名称):

- 打开“styles.xml”文件,在其中添加自定义EditText样式:

   <style name="EditTextCustomHolo" parent="android:Widget.EditText">
      <item name="android:background">/apptheme_edit_text_holo_light</item>
      <item name="android:textColor">#ffffff</item>
   </style>
   

- 在EditText中使用自定义样式:

   <EditText
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      style="/EditTextCustomHolo"/>
   

希望以上内容能对您有所帮助。

0
0 Comments

问题的原因是当EditText获得焦点时,设置的颜色不会生效,而是显示焦点颜色。解决方法是使用以下代码来设置EditText的下划线颜色:

editText.getBackground().setColorFilter(color, PorterDuff.Mode.SRC_IN);

如果要移除颜色,可以使用以下代码:

editText.getBackground().clearColorFilter();

另外,如果在Xamarin for Android中使用自定义渲染器,可以在OnElementChanged方法中使用以下代码:

Control.Background.SetColorFilter(Android.Graphics.Color.White, PorterDuff.Mode.SrcIn);

关于使用哪个渲染器,可以根据具体情况选择适合的渲染器。对于搜索栏,可能需要使用SearchBarRenderer来设置颜色。

0