最近我从 v21.0.3 升级到支持 lib v22.1,ActionMode 曾经在 v21.0.3 上完美运行。它在 Lollipop 上仍然运行良好,但在 Pre-L 设备上无法正常运行。
更新后,这是它在 Android Lollipop 上的外观
这是它在 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/