【问题标题】:Custom color for icons in Expanded SearchView in AndroidAndroid中扩展搜索视图中图标的自定义颜色
【发布时间】:2017-08-23 19:08:40
【问题描述】:

我将应用程序的主要颜色设为白色,之后,展开的 SearchView 中的图标不可见,因为它们也是白色的。对于其他工具栏图标和溢出图标,我可以使用 style.xml 设置备用图标

当前通过 manifest 文件应用到 Activity 的样式是:

<style name="RecyclerAppTheme" parent="BaseTheme" />

    <style name="BaseTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="colorPrimary">@color/primary</item>
        <item name="colorPrimaryDark">@color/primary_dark</item>
        <!-- Spark -->
        <item name="colorAccent">@color/black</item>
        <item name="titleTextColor">@color/black</item>
        <!-- <item name="colorControlHighlight">#D3D3D3</item>
-->
        <!--<item name="colorControlNormal">@color/white</item>
        <item name="colorControlActivated">@color/white</item> // change this color to the required cursor color your need.-->

        <!--<item name="colorPrimary">#1999DA</item>

        <item name="colorPrimaryDark">#1999DA</item>

        <item name="colorAccent">#1999DA</item>-->
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>

        <item name="drawerArrowStyle">@style/DrawerArrowStyle</item>

        <item name="selectableItemBackground">@drawable/selectable_item_background</item>
        <item name="android:selectableItemBackground">@drawable/selectable_item_background</item>

        <!-- Spark -->
        <item name="android:actionOverflowButtonStyle">@style/DarkOverFlowButton</item>
        <item name="actionOverflowButtonStyle">@style/DarkOverFlowButton</item>
        <item name="android:textColorPrimary">@color/actionbar_black</item>
        <item name="android:editTextColor">@color/black</item>
        <item name="editTextColor">@color/black</item>
        <!--  below things for action menu -->

        <!--       <item name="actionOverflowMenuStyle">@style/OptionsMenu</item>-->

        <!-- End of Action menu-->
    </style>

【问题讨论】:

  • 您好 Midhun,目前不确定您要问什么,能否请您澄清一下您的问题?
  • @chirag90 我在上面的查询中也添加了活动样式。应用样式后,活动工具栏中展开的 searchView 中的控件不可见,因为它们都是白色的。

标签: android android-toolbar searchview android-styles


【解决方案1】:

例如,尝试使用强调色。

在你的styles.xml中:

<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">#455a64</item>
    <item name="colorPrimaryDark">#37474f</item>
    <item name="colorAccent">#c62828</item>
</style>

会给你一个黑暗的主要和红色控制。将这些颜色自定义到您的调色板。

【讨论】:

  • colorAccent 被指定为黑色仍然无法正常工作。我已经更新了用于活动的样式。请看一下
【解决方案2】:

实际上可以使用多个主题。

在您的 style.xml 中,您需要添加一个像这样的新主题:

 <style name="ThemeName">
    <item name="colorPrimary">#000000</item>
    <item name="colorPrimaryDark">#000000</item>
    <item name="colorAccent">#000000</item>
</style>

在您的 layout.xml 中,您必须添加这一行 android:theme="@style/ThemeName"

见:https://developer.android.com/guide/topics/ui/themes.html

【讨论】:

  • 我尝试应用 colorAccent,仍然无法正常工作。更新了上面问题中使用的样式。
猜你喜欢
  • 2019-04-17
  • 2023-03-27
  • 1970-01-01
  • 2012-12-17
  • 1970-01-01
  • 1970-01-01
  • 2016-08-12
  • 1970-01-01
  • 2013-12-10
相关资源
最近更新 更多