How to change SearchView textcolor?

jojo picture jojo · May 11, 2016 · Viewed 18.3k times · Source

My SearchView is located in a LinearLayout / RelativeLayout rather than the action bar.

Its default text color is white, how to change it?

Answer

Corneliu Dascălu picture Corneliu Dascălu · Nov 11, 2016

Digging into the source code of the appcompat SearchView I found that it uses an AppCompatAutoCompleteTextView which by default uses the autoCompleteTextView style.

Creating a different autocomplete style and setting it in the app theme solved the problem for me.

<style name="SearchAutoCompleteTextView" parent="Widget.AppCompat.Light.AutoCompleteTextView">
    <item name="android:textColor">@color/my_text_color</item>
    <item name="android:textColorHint">@color/my_hint_color</item>
</style>

<style name="AppTheme" parent="Theme.AppCompat.Light">
    ...
    <item name="autoCompleteTextViewStyle">@style/SearchAutoCompleteTextView</item>
</style>