【问题标题】:remove back/home button from action mode on long press in android在android中长按时从动作模式中删除返回/主页按钮
【发布时间】:2016-07-01 06:53:55
【问题描述】:

我已经在recycler view 中实现了长按上下文动作模式。为此,我从创建动作模式中调用了ActionModeCallback

创建动作模式时,默认显示后退箭头。 检查以下:

点击后退箭头,动作模式将关闭。

现在我想hideremoveaction mode 在android 中一起出现的默认后退按钮。

注意:已经尝试过getActionBar().setDisplayHomeAsUpEnabled(false).,但它不起作用。请帮忙。

已编辑:

谢谢 问题已解决: 添加 style.xml 后

<item name="actionModeCloseDrawable">@color/colorPrimary</item>
    <item name="actionModeCloseButtonStyle">@style/Widget.AppCompat.ActionMode</item>

【问题讨论】:

  • 我认为您应该将您的解决方案粘贴到答案部分,以便它可以被接受并增加有用的计数器。

标签: android contextual-action-bar android-actionmode actionmode


【解决方案1】:

试试这个彻底删除它:

ActionBar actionBar = getActionBar();
if (actionBar != null) {
    actionBar.setHomeButtonEnabled(false);      
    actionBar.setDisplayHomeAsUpEnabled(false);
    actionBar.setDisplayShowHomeEnabled(false); 
}

更新

或尝试使用自定义主题

<style name="yourTheme" parent="theThemeYouUse">
    <item name="android:actionModeCloseDrawable">@drawable/yourBack</item>
</style>

在清单中:

<activity
        android:name="yourActivity"
        android:theme="@style/yourTheme"
  ...
/>

【讨论】:

  • 只想从上下文操作模式中删除后退按钮,而不是从上一个操作栏中删除。
  • 您尝试过使用自定义主题吗?
  • 我在片段类中实现动作模式而不是在活动中。也可以在父活动样式中尝试上述样式。但不工作。
【解决方案2】:

在项目下方添加您的样式

 <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
     ...
        <item name="actionModeCloseButtonStyle">@style/NoCloseButtonActionModeStyle</item>
    </style>
<style name="NoCloseButtonActionModeStyle">
        <item name="android:visibility">gone</item>
    </style>

【讨论】:

    猜你喜欢
    • 2012-10-28
    • 2014-04-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多