5

Sto provando ad impostare la visualizzazione personalizzata della mia app e il layout che ho creato non riempie l'intera barra delle azioni. Ho provato così tante impostazioni di stile ma nessuna ha funzionato per me.getSupportActionBar(). SetCustomView (vista) non riempie tutta la barra delle azioni

ecco il mio codice in attività

View view = getLayoutInflater().inflate(R.layout.actionbar_customized_home, null); 
getSupportActionBar().setDisplayShowCustomEnabled(true); 
getSupportActionBar().setCustomView(view); 

Ecco il layout si trovava nei impostato come vista

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:background="@color/actionbar_color" 
    > 
![enter image description here][1] 

    <ImageView 
     android:layout_width="wrap_content" 
     android:layout_height="25dp" 
     android:layout_centerInParent="true" 
     android:scaleType="fitCenter" 
     android:src="@drawable/logo"/> 



</RelativeLayout> 

Anche lo sfondo delle voci di menu come il navdrawer come posso fare il mio CustomView come colore di sfondo?

ho davvero apprezzato l'aiuto

+0

Provare a cambiare la larghezza e l'altezza del RelativeLayout per match_parent invece – Mus

+0

non ha funzionato T_T –

risposta

6

Impostare il contenitore principale di questo:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="fill_parent" 
     android:layout_height="match_parent" 
     android:layout_gravity="fill_horizontal" 
     android:background="@color/actionbar_color" 
     > 

     <ImageView 
      android:layout_width="wrap_content" 
      android:layout_height="25dp" 
      android:layout_centerInParent="true" 
      android:scaleType="fitCenter" 
      android:src="@drawable/logo"/> 

    </RelativeLayout> 

La parte importante è la android:layout_gravity="fill_horizontal che dovrebbe risolvere il tuo problema.

EDIT:

se questo non ha funzionato prova a fare questo:

View view = getLayoutInflater().inflate(R.layout.actionbar_customized_home, null); 
LayoutParams layout = new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT); 
getSupportActionBar().setCustomView(view, layout); 
+0

fatto non funziona T_T –

+0

contenitore principale ora è simile a questo: –

+0

0

visualizzazioni personalizzate occupano solo l'area compresa tra il tasto NAV/e il menu di overflow. Per modificare lo sfondo e altri colori vedere questo - https://developer.android.com/training/basics/actionbar/styling.html

+0

hi!grazie per aver condiviso questo, ora ho solo bisogno di impostare lo sfondo della voce di menu sullo stesso colore del layout nella mia visualizzazione personalizzata. –

+0

Ho letto quel post e ho provato gli stili ma non cambierà lo sfondo della voce di menu come il pulsante drawertoggle. Sto usando appcompat v7 btw e ActionBarDrawerToggle per aiutarmi con il pulsante –

16

Questo è tutto ciò che serve per aggiungere nella vostra onCreate()

getSupportActionBar().setCustomView(new CustomView(this)); 
getSupportActionBar().setDisplayShowCustomEnabled(true); 
+0

Questo ha funzionato per meh! –

+0

getSupportActionBar(). SetDisplayShowCustomEnabled (true); è quello che ha fatto per me. Grazie. –

Problemi correlati