9

我正在使用新的 android 支持库 21.0.2,当我调用 ActionMode 进行文本选择时,我得到了这个。

错误或功能

似乎比标题 textview 背景是透明的。

重新定义 ActionMode 的 titleTextStyle 无效。

有什么建议么?谢谢。

主题.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>
4

2 回答 2

4

AppBarLayout我使用the Toolbarand遇到了这个问题TabLayout。我在 上设置了背景颜色,Toolbar这导致ActionMode标题显示 的背景颜色,Toolbar而不是在.actionModeBackground上设置的颜色Theme

我将背景颜色移到了AppBarLayout,这解决了标题具有背景颜色的问题Toolbar

希望这对某人有帮助!

于 2016-10-26T04:07:35.507 回答
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>
于 2015-07-15T17:33:04.107 回答