私はSearchViewのテーマに本当に挑戦してきました。私のmin APIもsdk 21なので、新しいスタイリングオプションを使用できるはずです。Android:テーマに見えないSearchView
具体的には、私がテーマ-できるようにするには、検索アイコンをクリックすると表示されるアプリ内バーのテキストフィールドをしたいです。私は最終的に背景を白にし、テキスト/カーソルを青または黒にしたい。
ここは私のstyles.xmlです。最後のテーマは私が取り組んでいる新しいSearchThemeです。実際の値は重要ではありません。変化を起こそうとしただけで投げ捨てたゴミ値です。
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:windowBackground">@android:color/white</item>
<item name="android:searchViewStyle">@style/AppTheme.SearchTheme</item>
</style>
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
<style name="AppTheme.PreferencesTheme" parent="AppTheme">
<item name="android:windowBackground">@android:color/white</item>
</style>
<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar">
<item name="android:windowBackground">@android:color/white</item>
<item name="android:searchViewStyle">@style/AppTheme.SearchTheme</item>
</style>
<style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light">
<item name="android:windowBackground">@android:color/white</item>
<item name="android:searchViewStyle">@style/AppTheme.SearchTheme</item>
</style>
<style name="AppTheme.SearchTheme" parent="Theme.AppCompat.Light">
<item name="android:closeIcon">@drawable/contacts5icon</item>
<item name="android:voiceIcon">@drawable/contacts5icon</item>
<item name="android:queryBackground">@android:color/black</item>
<item name="android:windowBackground">@android:color/white</item>
</style>
私は私のレイアウトで使用している他の主要テーマにAppTheme.SearchThemeを割り当てました。しかし、私は何も効果がないようです。値は変化していないようです。
ここをクリックしてください。以前はAndroidのテーマをあまり気にしていなかったので、少し失われてしまいました。ありがとう。
正直なところ、私は百万回のすべてを試みたが、どこに行くことができませんでした。何が間違っているのか分かりません。とにかく、私はちょうどそれを心配するのをやめるためにデフォルトの外観を解決することにしました。しかし、真剣に、例えば、queryBackgroundは何も変更しません。 – user2223059