我正在使用Theme.AppCompat.Light主题并使用SearchView,默认情况下会显示黑暗文本和图标..
如何在这个灯光主题中使用Theme.AppCompat中定义的SearchView?
已在下面试过但不能正常工作?
<style name="Theme.App.Light" parent="Theme.AppCompat.Light">
<item name="searchViewStyle">@style/Widget.AppCompat.SearchView</item>
</style>
即使使用Theme.AppCompat.Light.DarkActionBar作为基本主题,也不会显示白色文字和图标..
可以通过覆盖所有值来完成,但我只需要使用Dark主题中提供的默认值。
答案 0 :(得分:16)
每this pro-tip,Theme.AppCompat.Light.DarkActionBar
仅适用于您使用AppCompat提供的操作栏。如果您使用的是Toolbar
,那么您应该使用Theme.AppCompat.Light.NoActionBar
主题。要为适合深色背景的工具栏添加主题,您需要添加android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
:
<android.support.v7.widget.Toolbar
android:background="?attr/colorPrimary"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"/>
然后 SearchView
会提取在黑暗背景下工作所需的正确资源。