代码之家  ›  专栏  ›  技术社区  ›  Pingpong

更改自定义自动完成文本视图的下划线颜色

  •  2
  • Pingpong  · 技术社区  · 6 年前

    我想更改自定义的下划线颜色 AutoCompleteTextView ,就像下面电话号码下面的蓝色换成其他颜色,并在下划线上方留出大约2dp的空间(请注意垂直线的两端)。

    enter image description here

    我在网上找不到这个问题的解决办法。

    在创建自定义的AutoCompleteTextView之前,我更改了内置的下划线颜色 自动补全文本框 通过colors.xml上的重音,如下所示。

    <resources>
            ...
      <color name="accent">#206DDA</color>
    ...
    </resources>
    

    但是,在习惯之后 自动补全文本框 用来代替内置的 自动补全文本框 ,下划线颜色使用默认颜色,如上图所示。

    我在下面试过了,但没用: styles.xml如下:

    <style name="Autocomplete" parent="Widget.AppCompat.Light.AutoCompleteTextView">    
        <item name="colorControlActivated">@color/primary</item>
      </style>
    

    activity.xml如下:

    <android.support.design.widget.TextInputLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content">
                <MyAutoCompleteTextView             
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:hint="Phone number"
                    android:completionThreshold="1"
                    android:maxLines="1"
                    android:inputType="text"
                    android:imeOptions="actionNext"
                    android:theme="@style/Autocomplete"
                    android:layout_marginLeft="5dp"
                    android:layout_marginRight="5dp" />
            </android.support.design.widget.TextInputLayout>
    

    下面是我的自动完成文本视图:

    public class MyAutoCompleteTextView: AutoCompleteTextView
            {
                public MyAutoCompleteTextView(Context context, IAttributeSet attrs)
                   : base(context, attrs)
                {
                }
    
                public override bool EnoughToFilter()
                {
                    return true;
                }      
            }
    
    1 回复  |  直到 6 年前
        1
  •  0
  •   Pankaj Kumar    6 年前

    使用 android:backgroundTint 改变颜色 MyAutoCompleteTextView . 就像

    <MyAutoCompleteTextView             
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        .......
        android:backgroundTint="#FF0000" />
    

    若要使其更可自定义,请更改 MyAutoCompleteTextView AppCompatAutoCompleteTextView 相反 AutoCompleteTextView