7

Nel file manifest ho questa linea per la mia etichetta applicazioneMostra barra del titolo dal codice

android:theme="@android:style/Theme.NoTitleBar" 

e praticamente ogni attività non ha una barra del titolo, ma per una delle attività che vuole mostrare la barra del titolo

so che per nascondere la barra posso usare questo codice

this.requestWindowFeature(Window.FEATURE_NO_TITLE); 
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 

Come posso mostrare la barra del titolo dal codice?

EDIT Per favore, non mi alto come posso nascondere la barra del titolo :), io so che, se qualcuno sa come posso dimostrarlo?

so che posso mettere NoTitleBar in ogni attività che voglio nascondere e posso lasciarlo per quello che voglio essere mostrato ... Ma non era quello il mio punto

+0

Questa è una bella domanda! Non vedo nulla che ti permetta di riempirlo una volta rimosso. Forse utilizzare la richiestaWindowFeature (Window.FEATURE_CUSTOM_TITLE); – JPM

+0

@JPM si romperà suppongo che – stinepike

+0

È necessario gestire la visualizzazione e nascondere la barra del titolo nell'attività stessa invece di impostare il tema per esso nel manifest – Pragnani

risposta

3

uso

 android:theme="@android:style/Theme.NoTitleBar" 

in ogni attività tranne l'attività in cui si desidera mostrare il titolo. Non utilizzare questo tema nell'attributo application

in base al commento si desidera apportare la modifica a un solo punto e sembra che non si desideri eseguire il chage in un solo manifest (!). ad ogni modo è possibile fare un'altra cosa

utilizzare una classe BaseActivity dove utilizzare la funzione no title ed estenderla in tutte le classi tranne l'attività titolata.

1

Il modo migliore per farlo è quello di fare riferimento a questo Try to use Window.FEATURE_CUSTOM_TITLE

A quanto pare questo non funziona e qualsiasi altro modo sembra bloccarsi sempre

requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); 
setContentView(R.layout.settings); 
activity.setTitle("Settings"); 

Sono sicuro che questo è il modo per fare questo via codice.

5

Per me i linee thous di lavoro codice perfettamente:

Hide:

getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); 
    getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN); 

Mostra:

getWindow().addFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN); 
    getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); 
+1

Non funziona per me in Android 5.X + – jjxtra

+0

Non funziona per anche io in Android 5.X :( – Ahmed

Problemi correlati