android - 如何更改 Lollipop 及以上设备上上下文操作模式的高度?

标签 android android-actionmode

我已经实现了here中的floatingsearchview 。在我的 Activity 中,我还具有长按列表项时启用的操作模式。在 Lollipop 之前,操作模式覆盖整个搜索 View ,但在 Lollipop 之后的设备上,它并不像下面的图片所示

lollipop and above without action mode

Pre-lollipop without action mode

Pre-lollipop with action mode which is correct behavior

该问题在下图中突出显示。

lollipop and above with action mode Problem

所以我想增加操作模式的高度,我该怎么做。我已经尝试过在样式文件中使用样式属性。我的 Activity 当前使用的样式如下所示。

<style name="AppTheme.ContexualActionMode">

    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/primary</item>
    <item name="colorPrimaryDark">@color/primary_dark</item>
    <item name="colorAccent">@color/accent</item>
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
    <item name="colorButtonNormal">@color/primary</item>
    <item name="windowActionModeOverlay">true</item>
    <item name="android:actionModeBackground">@color/actionModeBachgroundColor</item>
</style>

我也尝试过,但没有解决。

<style name="Widget.ActionModeStyle" parent="@style/Widget.AppCompat.ActionMode">
<item name="android:background">@drawable/action_mode_background</item>
<item name="titleTextStyle">@style/TitleTextStyle</item>
<item name="android:height">70dp</item><!--or something-->
</style>

具有 Activity 风格

<style name="AppTheme.ContexualActionMode">

    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/primary</item>
    <item name="colorPrimaryDark">@color/primary_dark</item>
    <item name="colorAccent">@color/accent</item>
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
    <item name="colorButtonNormal">@color/primary</item>
    <item name="windowActionModeOverlay">true</item>
    <item name="android:actionModeStyle">@Widget.ActionModeStyle</item>
</style>

谁能帮帮我。

最佳答案

我想你在这么长时间后找到了答案(希望),但我只是在这个问题上苦苦挣扎,对我有用的是:

<style name="AppTheme.ActionMode" parent="@style/Widget.AppCompat.ActionMode">

    <item name="background">@color/Blue</item>
    <item name="height">104dp</item>
    <item name="titleTextStyle">@style/myTitleTextStyle</item>

</style>

这在你的应用程序主题样式中

<item name="actionModeStyle">@style/AppTheme.ActionMode</item>

当我从项目中删除 android: 前缀时,它终于对我有用了

关于android - 如何更改 Lollipop 及以上设备上上下文操作模式的高度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37859792/

相关文章:

java - 安卓/java : cannot parse existing XML file?(苹果机)

用于屏幕指纹的 Android API

android - 如何从 SD 卡保存和获取图像 Cropped Android 的路径?

android - 无法在 Android 中为 ListView ItemLongClick 启动 ActionMode 回调

android - 如何在不支付真钱的情况下测试应用内购买

android - 这是一个错误 E/Surface : getSlotFromBufferLocked: unknown buffer: 0xa2ae2310?

android - 从上下文操作栏中删除标题

Android:使用工具栏在 AppCompat-v7 上设置 ActionMode 样式

android - 批量上下文操作模式

android - Webview 文本选择不清除