android - 支持库 v22 中的 ActionMode 颜色已更改

标签 android android-support-library android-appcompat android-actionmode

最近我从 v21.0.3 升级到支持 lib v22.1,ActionMode 曾经在 v21.0.3 上完美运行。它在 Lollipop 上仍然运行良好,但在 Pre-L 设备上无法正常运行。

更新后,这是它在 Android Lollipop 上的外观

enter image description here

这是它在 Kitkat 上的样子

ActionMode on Kitkat

下面是我使用的主题

<style name="AppTheme.Base" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="colorPrimary">@color/primary</item>
    <item name="colorPrimaryDark">@color/primary_dark</item>
    <item name="colorAccent">@color/accent</item>
    <item name="android:windowNoTitle">true</item>
    <item name="windowActionBar">false</item>
    <item name="windowActionModeOverlay">true</item>
</style>

以及 Activity XML 中的工具栏

<android.support.v7.widget.Toolbar
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="?attr/colorPrimary"
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>

P.S. v22.0.0 上有同样的问题

最佳答案

一个可能的解决方法是按照您的风格手动设置操作模式背景。添加以下行修复了我的项目中非常相似的问题:

    <item name="android:actionModeBackground">@color/dark_blue</item> <!-- 5.0 -->
    <item name="actionModeBackground">@color/dark_blue</item> <!-- 4.4 and before -->

关于android - 支持库 v22 中的 ActionMode 颜色已更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29856846/

相关文章:

android - Firebase 将我的崩溃数据存储多长时间?/从 Crashlytics 导出数据?

java - 为什么我的位置在第一次尝试时返回 null?

java - Android appcompat v7 错误

android - 使用 support-v7-appcompat 在 ActionBar 中搜索 View

android - 扩展 AppCompatActivity 会使应用崩溃

android-5.0-lollipop - ActionBar 中动画 ActionBarDrawerToggle 的颜色

android - 在构建一套 Android 应用程序时如何更好地处理包名称

android - 如何在触摸特定 View 时禁用 viewpager 适配器?

android - Material 按钮上的圆角

android - 找不到 Material 主题资源