7

W pliku manifestu mam ten wiersz do mojego tagu aplikacjiPokaż pasek tytułowy z kodu

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

iw zasadzie każde działanie nie posiada pasek tytułu, ale dla jednego z rodzajów działalności Chcę pokazać tytułowy bar

wiem, że aby ukryć pasek mogę użyć tego kodu

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

Jak mogę pokazać pasek tytułowy z kodu?

EDIT proszę nie wysoki mi jak mogę ukryć pasek tytułowy :), wiem, że jeśli ktoś wie jak mogę go pokazać?

wiem, że mogę umieścić NoTitleBar w każdej działalności, który chcę ukryć i mogę zostawić go za jednego chcę pokazać ... Ale to nie był mój punkt

+0

To jest dobre pytanie! Nie widzę niczego, co pozwoliłoby ci go włożyć ponownie po usunięciu. Może użyj requestWindowFeature (Window.FEATURE_CUSTOM_TITLE); – JPM

+0

@JPM to się zmiażdży, domyślam się, że – stinepike

+0

Ned zajmiesz się wyświetlaniem i ukrywaniem paska tytułu w samym działaniu zamiast ustawiania "motywu" dla niego w manifeście – Pragnani

Odpowiedz

3

użycie

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

w każdej aktywności oprócz czynności, w której ma być wyświetlany tytuł. Nie używaj tego tematu w atrybucie application atrybut

zgodnie z twoim komentarzem, który chcesz wprowadzić moją zmianę tylko w jednym miejscu i wygląda na to, że nie chcesz, aby chage było tylko w jednym manifeście (!). w każdym razie możesz wykonać inną czynność:

użyć klasy BaseActivity, w której używa się funkcji bez tytułu i rozszerzać ją we wszystkich klasach z wyjątkiem aktywności pod tytułem.

1

Najlepszym sposobem, aby to zrobić, aby odwoływać się do tego Try to use Window.FEATURE_CUSTOM_TITLE

Widocznie to nie działa i każdy inny sposób wydaje się zawsze upaść

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

Jestem pewien, że to jest sposób, aby to zrobić poprzez kod.

5

dla mnie tys linii kodu pracy doskonale:

Ukryj:

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

Pokaż:

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

Nie działa dla mnie w systemie Android 5.X + – jjxtra

+0

Nie działa dla ja też w Androidzie 5.X :( – Ahmed

Powiązane problemy