Change underline color for Custom AutoCompleteTextView

pingpong.6106pingpong.6106 USMember ✭✭
edited August 2018 in Xamarin.Android

I want to change the underline color of a custom AutoCompleteTextView, like the blue color under Phone Number below to other color, and remvoe about 2dp space above the underline (please note that vertial line one both ends).

I cannot find solution for the problem on the web.

Before I created the custom AutoCompleteTextView, I changed underline color for the built-in AutoCompleteTextView via accent on colors.xml like below.

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

However, after a custom AutoCompleteTextView is used in place of the built-in AutoCompleteTextView, the underline color uses default color, like the image above.

I tried below but it does not work:
styles.xml below:

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

activity.xml below:

<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>

Below is my AutoCompleteTextView:

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

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

Answers

  • YorkGoYorkGo CNMember, Xamarin Team Xamurai
    edited August 2018

    I test your code on my side and here is the effect:

    Is the effect you need?

Sign In or Register to comment.