2017-01-31 4 views
3

Я добавляю контекстную панель действий после долгого щелчка элемента RecyclerView. Проблема в том, что панель инструментов все еще видна. Контекстная панель действий не перекрывается полностью.Контекстная панель действий, не перекрывающая панель инструментов полностью

Пробовал поиск информации, но информации об этом не было найдено.

Моя панель инструменты:

enter image description here

После добавления контекстной панели действий:

enter image description here

Как вы можете видеть панель инструментов все еще отображается в нижней части.

Тема им с помощью:

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 
    <item name="windowNoTitle">true</item> 
    <item name="windowActionBar">false</item> 
    <item name="windowActionModeOverlay">true</item> 
</style> 

Моя панель инструментов:

<?xml version="1.0" encoding="utf-8"?> 
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:id="@+id/toolbar" 
    android:minHeight="?android:attr/actionBarSize" 
    android:background="#F7F8F9" 
    app:titleTextColor="@color/colorPrimaryDark" /> 

cab.xml

<?xml version="1.0" encoding="utf-8"?> 
<menu xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto"> 

    <item 
     android:id="@+id/action_upload" 
     android:title="Upload" 
     android:icon="@drawable/ic_file_upload_black_24dp" 
     app:showAsAction="always" /> 

    <item 
     android:id="@+id/action_reboot" 
     android:title="Reboot" 
     android:icon="@drawable/ic_refresh_black_24dp" 
     app:showAsAction="always"/> 
</menu> 

Это, как я начинаю контекстную панель действий:

startSupportActionMode(new android.support.v7.view.ActionMode.Callback() { 
    @Override 
    public boolean onCreateActionMode(android.support.v7.view.ActionMode mode, Menu menu) { 
     mode.getMenuInflater().inflate(R.menu.cab, menu); 
     return true; 
    } 

    @Override 
    public boolean onPrepareActionMode(android.support.v7.view.ActionMode mode, Menu menu) { 
     return false; 
    } 

    @Override 
    public boolean onActionItemClicked(android.support.v7.view.ActionMode mode, MenuItem item) { 
     return false; 
    } 

    @Override 
    public void onDestroyActionMode(android.support.v7.view.ActionMode mode) { 

    } 
}); 

Мои показания:

contextual action bar padding in Android

Contextual action bar does not overlay my toolbar

Попробовал почти все из вышеуказанных вопросов. Ни один из них не помог.

P.S. Пробовал увеличивать/уменьшать размер панели инструментов, но видимая строка все еще видна

Итак, как сделать панель контекстного перекрытия перекрытием полностью?

+0

Это тема, которую я предполагаю. –

+0

На самом деле пробовал менять темы, но его все тот же –

+0

вы пробовали менять цвет панели инструментов? если не изменить и посмотреть, требуется ли новый цвет или цвет вашей темы –

ответ

3

Добавить

<item name="actionModeBackground">your_color</item> 

в файле styles.xml, он будет полностью перекрывать панель инструментов.

+0

Это полезно, если вы хотите использовать один и тот же цвет как для панели ActionMode, так и для вашей панели инструментов. Я ищу решение, в котором цвет ActionBar остается темно-серым и отличается от панели инструментов. Различные цвета лучше для пользователя признать, что он вступил в другой режим. Все еще пытались установить высоту ActionBar через 'styles.xml' на то же значение, что и высота панели инструментов, без эффекта ... Итак, существуют ли другие решения? –