I want to change the color of a text in an ActionBarSherlock SearchView
, so I found this on StackOverflow:
AutoCompleteTextView searchText = (AutoCompleteTextView) searchView.findViewById(R.id.abs__search_src_text);
searchText.setHintTextColor(getResources().getColor(R.color.white));
searchText.setTextColor(getResources().getColor(R.color.white));
But the problem is that searchText
is null always. Also I tried with search_src_text
(no abs__
) - again, searchText
is null
.
I use Sherlock for my ActionBar (having custom view for the actionbar) but I also want the text color of the search view to be changed.
Anything I don't get?
Change and apply your styles as follows:
Overwrite SearchViewStyle
that defines relevant style.
<style name="SearchViewStyle"
parent="Widget.Sherlock.Light.SearchAutoCompleteTextView">
<item name="android:textColor">myTextColor</item>
</style>
Add this style definition to your app theme.
<style name="CustomTheme" parent="Theme.Sherlock.Light">
...
<item name="searchAutoCompleteTextView">@style/SearchViewStyle</item>
...
</style>
Apply this theme in your Manifest (android:theme="CustomTheme"
).
Hope this helps ... Cheers!
p.s. search for SearchViewStyle
in ABS style definitions (XML files). This way you can follow up available styles using Ctrl+click on definitions.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With