2017-01-31 4 views
3

Ich füge kontextabhängige Aktionsleiste nach langem Klick auf RecyclerView Element hinzu. Problem ist Toolbar ist immer noch sichtbar. Kontext-Aktionsleiste überlappt sich nicht vollständig.Kontext-Aktionsleiste überlappt die Symbolleiste nicht vollständig

Ich habe versucht, nach Informationen zu suchen, aber keine oder nur sehr wenige Informationen gefunden.

Meine Symbolleiste:

enter image description here

Nach der Zugabe von kontextueller Aktionsleiste:

enter image description here

Wie Sie Symbolleiste sehen können, ist an der Unterseite noch sichtbar.

Thema im mit:

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

Meine Symbolleiste:

<?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> 

Dies ist, wie ich Kontext-bezogene Aktionsleiste bin ab:

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) { 

    } 
}); 

Meine Lesungen:

contextual action bar padding in Android

Contextual action bar does not overlay my toolbar

versucht so ziemlich alles von oben gestellten Fragen. Keiner von ihnen hat geholfen.

P.S. Versucht, die Größe der Symbolleiste zu vergrößern/verkleinern, aber die sichtbare Linie ist immer noch sichtbar

Also, wie Kontext Symbolleisten Symbolleiste vollständig überlappen?

+0

Das ist es Thema ich denke. –

+0

Eigentlich versucht, Themen zu ändern, aber es ist immer noch die gleichen –

+0

haben Sie versucht, Toolbar Farbe zu ändern? wenn nicht ändern und sehen, ob es neue Farbe oder Ihre Farbe des Themas –

Antwort

3

hinzufügen

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

in Ihrer styles.xml Datei, ist es Ihre Symbolleiste vollständig überlagern.

+0

Dies ist nur nützlich, wenn Sie die gleiche Farbe sowohl für die ActionMode-Leiste als auch für Ihre Symbolleiste verwenden möchten. Ich suche nach einer Lösung, bei der die Farbe der ActionBar dunkelgrau bleibt und sich von der Werkzeugleiste unterscheidet. Verschiedene Farben sind besser für den Benutzer zu erkennen, dass er in einen anderen Modus ging. Habe trotzdem versucht, die Höhe der ActionBar über 'styles.xml' auf den gleichen Wert wie die Toolbarhöhe zu setzen - ohne Wirkung ... Also, gibt es andere Lösungen? –

Verwandte Themen