Android ActionMode标题背景颜色

9
我正在使用新的Android支持库21.0.2,当我调用ActionMode来选择文本时,我得到了这个结果。 图片里的标题文本视图背景是透明的。重新定义ActionMode的titleTextStyle没有效果。 有什么建议吗?谢谢。 theme.xml
    <item name="actionModeStyle">@style/ActionMode</item>
    <item name="android:actionModeStyle">@style/ActionMode</item>

    <style name="ActionMode" parent="@style/Widget.AppCompat.ActionMode">
        <item name="titleTextStyle">@style/ActionModeTitleTextStyle</item>
    </style>

    <style name="ActionModeTitleTextStyle" parent="@style/TextAppearance.AppCompat.Widget.ActionMode.Title">
        <item name="android:background">#ff0000</item>
        <item name="android:colorBackground">#ff0000</item>
    </style>

这里也是,你解决了吗? - Sandro Simas
@SandroSimas 嗯...实际上,在我将Android支持库更新到22.2.0之后,这个问题就消失了。 - Kalyaganov Alexey
  • for image content xD
- localhost
2个回答

5
我在使用AppBarLayoutToolbar以及TabLayout时遇到了问题。我已经在Toolbar上设置了背景颜色,这导致ActionMode标题显示了Toolbar的背景颜色而不是在Theme中设置的actionModeBackground颜色。
我将背景颜色移动到AppBarLayout中,这样就解决了标题具有Toolbar背景颜色的问题。
希望这能帮助到某些人!

4

即使我升级到22.2.0版本,这个问题仍然存在。我通过将没有“android:”前缀的项目添加到样式中并在Toolbar元素中添加样式属性来解决它。

<android.support.v7.widget.Toolbar
  xmlns:android="http://schemas.android.com/apk/res/android"
  style="@style/ToolbarTheme"
  android:id="@+id/toolbar"
  android:layout_width="match_parent"
  android:layout_height="?attr/actionBarSize"
  android:elevation="6dp"/>  

<style name="AppTheme.Base" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowBackground">@color/window_background</item>
    <item name="android:windowActionBar">false</item>

    <item name="android:windowActionModeOverlay">true</item>
    <item name="windowActionModeOverlay">true</item>

    <item name="android:actionModeStyle">@style/ActionModeTheme</item>
    <item name="actionModeStyle">@style/ActionModeTheme</item>
</style>

<style name="AppTheme" parent="AppTheme.Base">
    <item name="colorPrimary">@color/primary</item>
    <item name="colorPrimaryDark">@color/primary_dark</item>>
    <item name="colorAccent">@color/accent</item>
    <item name="colorButtonNormal">@color/primary</item>
</style>

<style name="ToolbarTheme" parent="Widget.AppCompat.Toolbar">
    <item name="android:background">@color/primary</item>
    <item name="background">@color/primary</item>
    <item name="titleTextAppearance">@style/ToolbarTitleTheme</item>
    <item name="popupTheme">@style/ThemeOverlay.AppCompat.Dark.ActionBar</item>
    <item name="theme">@style/ThemeOverlay.AppCompat.Dark.ActionBar</item>
</style>

<style name="ToolbarTitleTheme">
    <item name="android:textSize">@dimen/text_large</item>
    <item name="android:textColor">@android:color/white</item>
    <item name="android:textStyle">bold</item>
</style>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接