小编Ben*_*Ben的帖子

使用工具栏作为操作栏时,如何设置SearchView的样式?

我正在使用ToolbarAppCompat v21库在我的应用程序中使用一个Action Bar,如Android开发者博客上的这篇文章所述.我使用ThemeOverlay.AppCompat.Dark.ActionBar主题设置了操作栏的样式,以便文本很轻.但是,我想让Action Bar SearchView的搜索建议弹出窗口在浅色背景上显示深色文字,我一直无法达到这个效果.

这是我的Action Bar的XML Toolbar:

<android.support.v7.widget.Toolbar
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/toolbar_actionbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:minHeight="?attr/actionBarSize"
    android:background="?attr/colorPrimary"
    android:elevation="@dimen/action_bar_elevation"
    app:theme="@style/ActionBarThemeOverlay"
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/> 
Run Code Online (Sandbox Code Playgroud)

我尝试将Action Bar主题叠加扩展为样式SearchView:

<style name="ActionBarThemeOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar">
    <item name="searchViewStyle">@style/Widget.AppCompat.Light.SearchView</item>
</style>
Run Code Online (Sandbox Code Playgroud)

我已经将这个相同的元素添加到我的主题中以获得良好的衡量标准:

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="searchViewStyle">@style/Widget.AppCompat.Light.SearchView</item>
</style>
Run Code Online (Sandbox Code Playgroud)

但这些searchViewStyle元素似乎没有任何影响.我怎么样SearchView这里的风格?

android android-actionbar searchview android-5.0-lollipop android-toolbar

25
推荐指数
2
解决办法
4万
查看次数