Autore Topic: Come fare per avere tutte le Activity fullscreen ma CON titlebar ?  (Letto 509 volte)

Offline Qwertid

  • Utente junior
  • **
  • Post: 50
  • Respect: 0
    • Mostra profilo
Come fare per avere tutte le Activity fullscreen ma CON titlebar ?
« il: 19 Settembre 2011, 16:59:03 CEST »
0
Ciao!
Il titolo del thread è abbastanza autoesplicativo. Come faccio in modo che tutte le mie activity presentino la title bar e siano fullscreen? Devo impostare le flag in ogni singola attività? Oppure esiste qualche tema Android che può fare al caso mio? (Io ne ho visti tutti NoTitleBar)

Grazie  ;-)

Offline 7h38ugg3r

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1200
  • Respect: +133
    • riccardofischetti
    • th38ugg3r
    • @7h38ugg3r
    • Mostra profilo
  • Dispositivo Android:
    Galaxy-S GT I-9000/ ASUS Eee Pad Transformer
  • Play Store ID:
    Riccardo Fischetti
  • Sistema operativo:
    OS X Lion / Linux Mint 11 (Katya)
Re:Come fare per avere tutte le Activity fullscreen ma CON titlebar ?
« Risposta #1 il: 19 Settembre 2011, 17:04:53 CEST »
0
la prima cosa da fare alla onCreate dell'activity:
Codice (Java): [Seleziona]
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN );
lo setti solo come  fullscreen.
7h38ugg3r<=>thebugger
Non conosci Java? Allora sei nel posto sbagliato!

http://www.androidpatterns.com/

Offline Qwertid

  • Utente junior
  • **
  • Post: 50
  • Respect: 0
    • Mostra profilo
Re:Come fare per avere tutte le Activity fullscreen ma CON titlebar ?
« Risposta #2 il: 19 Settembre 2011, 17:35:53 CEST »
0
Non c'è nessun modo per evitare di dover scrivere in tutte le activity la stessa riga di codice?

Grazie del suggerimento comunque!  :D

Offline teskio

  • Moderatore globale
  • Utente normale
  • *****
  • Post: 387
  • Respect: +118
    • Github
    • Google+
    • Mostra profilo
    • Skullab
  • Dispositivo Android:
    Cubot GT99 / SurfTab Ventos 10.1
  • Play Store ID:
    Skullab Software
  • Sistema operativo:
    windows 7 / ubuntu 12.04
Re:Come fare per avere tutte le Activity fullscreen ma CON titlebar ?
« Risposta #3 il: 19 Settembre 2011, 20:56:21 CEST »
+1
Ereditarietà. Crei una activity base dove setti il fullscreen come proposto e poi estendi le successive activity con quella base. Oppure crei un custom theme xml con android:windowFullscreen a true e android:windowNoTitle a false e Lo applichi nel manifest all'application.

Offline iceweasel

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 878
  • Respect: +147
    • Mostra profilo
  • Dispositivo Android:
    LGE P990 - Google Nexus 5
  • Sistema operativo:
    Linux Debian Sid
Re:Come fare per avere tutte le Activity fullscreen ma CON titlebar ?
« Risposta #4 il: 19 Settembre 2011, 21:20:24 CEST »
0
Nel file AndroidManifest.xml basta mettere il nome del tema già previsto, non serve ricrearlo:

Codice: [Seleziona]
<activity ... android:theme="@android:style/Theme.NoTitleBar.Fullscreen" ... >
...
</activity>
adb logcat | tee /tmp/logcat | grep TAG

Offline teskio

  • Moderatore globale
  • Utente normale
  • *****
  • Post: 387
  • Respect: +118
    • Github
    • Google+
    • Mostra profilo
    • Skullab
  • Dispositivo Android:
    Cubot GT99 / SurfTab Ventos 10.1
  • Play Store ID:
    Skullab Software
  • Sistema operativo:
    windows 7 / ubuntu 12.04
Re:Come fare per avere tutte le Activity fullscreen ma CON titlebar ?
« Risposta #5 il: 19 Settembre 2011, 23:31:46 CEST »
0
Nel file AndroidManifest.xml basta mettere il nome del tema già previsto, non serve ricrearlo:

Codice: [Seleziona]
<activity ... android:theme="@android:style/Theme.NoTitleBar.Fullscreen" ... >
...
</activity>

In questo modo elimini anche la TitleBar, mentre invece Qwertid voleva mantenerla.

Offline iceweasel

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 878
  • Respect: +147
    • Mostra profilo
  • Dispositivo Android:
    LGE P990 - Google Nexus 5
  • Sistema operativo:
    Linux Debian Sid
Re:Come fare per avere tutte le Activity fullscreen ma CON titlebar ?
« Risposta #6 il: 20 Settembre 2011, 00:03:15 CEST »
0
Non avevo visto l'impostazione a false del flag windowNoTitle.

Dai sorgenti di Android i possibile temi sono questi:

    Theme.NoTitleBar
    Theme.NoTitleBar.Fullscreen
    Theme.Black
    Theme.Black.NoTitleBar
    Theme.Black.NoTitleBar.Fullscreen
    Theme.Dialog
    Theme.Light
    Theme.Light.NoTitleBar
    Theme.Light.NoTitleBar.Fullscreen
    Theme.Translucent
    Theme.Translucent.NoTitleBar
    Theme.Translucent.NoTitleBar.Fullscreen
    Theme.Wallpaper
    Theme.Wallpaper.NoTitleBar
    Theme.Wallpaper.NoTitleBar.Fullscreen

Non c'è nessun tema già pronto con solo Fullscreen.

Il tema "Theme.NoTitleBar.Fullscreen" è definito in questo modo:

Codice: [Seleziona]
<style name="Theme.NoTitleBar.Fullscreen">
        <item name="android:windowFullscreen">true</item>
        <item name="android:windowContentOverlay">@null</item>
</style>

quindi basta crearlo uno nuovo senza "android:windowContentOverlay".
adb logcat | tee /tmp/logcat | grep TAG