удалить кнопку «назад/домой» из режима действий при длительном нажатии в Android

Я реализовал режим контекстного действия при длительном нажатии внутри recycler view. Для этого я вызвал ActionModeCallback из режима создания действия.

При создании режима действия стрелка назад отображается по умолчанию. Проверьте ниже:

введите здесь описание изображения

При щелчке по стрелке назад режим действий закроется.

Теперь я хочу hide или remove эту кнопку «Назад» по умолчанию, которая идет вместе с action mode в Android.

Примечание. Уже пробовал getActionBar().setDisplayHomeAsUpEnabled(false)., но не работает. Пожалуйста, помогите.

Отредактировано:

Спасибо. Проблемы решены: после добавления в style.xml

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

person user2021938    schedule 01.07.2016    source источник
comment
Я думаю, вам следует вставить свое решение в раздел ответов, чтобы его можно было принять и увеличить полезный счетчик.   -  person LunaVulpo    schedule 04.09.2018


Ответы (2)


Попробуйте это, чтобы полностью удалить его:

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"
  ...
/>
person Erik Minarini    schedule 01.07.2016
comment
просто хочу удалить кнопку «Назад» из контекстного режима действий, а не из предыдущей панели действий. - person user2021938; 01.07.2016
comment
Вы пытались использовать пользовательскую тему? - person Erik Minarini; 01.07.2016
comment
я реализую режим действия в классе фрагментов, а не в активности. Также попробуйте вышеприведенный стиль в стиле родительской активности. Но не работает. - person user2021938; 01.07.2016

Добавьте ниже пункт к вашему стилю

 <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>
person Robotic Vn    schedule 18.04.2019