更改自定义AutoCompleteTextView下划线的颜色

时间:2018-08-04 15:45:52

标签: android xamarin xamarin.android autocompletetextview

我想将自定义AutoCompleteTextView的下划线颜色(例如下面“电话号码”下的蓝色)更改为其他颜色,并在下划线上方保留大约2dp的空间(请注意,垂直线两端都结束了)。

enter image description here

我在网络上找不到解决问题的方法。

在创建自定义的AutoCompleteTextView之前,我通过像下面这样的colors.xml上的重音更改了内置AutoCompleteTextView的下划线颜色。

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

但是,在使用自定义AutoCompleteTextView代替内置AutoCompleteTextView之后,下划线颜色使用默认颜色,如上图所示。

我在下面尝试过,但没有用: 下面的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>

下面是我的AutoCompleteTextView:

public class MyAutoCompleteTextView: AutoCompleteTextView
        {
            public MyAutoCompleteTextView(Context context, IAttributeSet attrs)
               : base(context, attrs)
            {
            }

            public override bool EnoughToFilter()
            {
                return true;
            }      
        }

1 个答案:

答案 0 :(得分:0)

使用android:backgroundTint更改MyAutoCompleteTextView的颜色。喜欢

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

要进行更多自定义,请将MyAutoCompleteTextView的父类更改为AppCompatAutoCompleteTextView而不是AutoCompleteTextView