2011-01-29 11 views

Odpowiedz

0

We wcześniejszych wersjach Androida można ustawić aplikację do trybu pełnoekranowego przy użyciu tej linii w manifeście:

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

nie mogę powiedzieć na pewno, że działa w 2.3, ponieważ nie mam zrobić jeszcze coś z 2.3.

Po drugie, nie jestem zbyt obeznany z pojęciem "tryb świateł", ale można dostosować jasność ekranu za pomocą pola WindowManager.LayoutParams class i screenBrightness.

38

Tryb Lights out został zmieniony w pełnym pakiecie SDK 3.0. Teraz można wprowadzić tryb świateł się następująco:

View v = findViewById(R.id.view_id); 
v.setSystemUiVisibility(View.STATUS_BAR_HIDDEN); 

Można również setlistener na widoku być powiadamiany o zmianach widoczności paska systemowego jest.

+2

Pełny przykład jest dostępny w przykładzie HoneycombGallery. –

+3

Z mojego doświadczenia wynika, że ​​to * działa tylko wtedy, gdy 'android: minSdkVersion' jest> = 11. –

+0

tylko po to, aby wyjaśnić po moim dochodzeniu, widok, który musisz użyć, to widok najwyższego poziomu w bieżącym działaniu, który wypełnia ekran. –

0

dwie rzeczy mogę dodać:

  1. Moja ListActivity ukrywa pasek stanu, ale gdy wyskakuje postępu dialogowym Pasek stanu pokazuje na jak długo zostanie wyświetlone okno dialogowe postępu. Poniższy tekst skrócił go do krótkiego flashowania i dotyczy wszystkich okien dialogowych wykonanych za pomocą "showDialog". Nie mogę się jeszcze tego całkowicie pozbyć.

    protected void onPrepareDialog (int id, Dialog dialog) { 
        View main_layout = dialog.findViewById(android.R.id.content).getRootView(); 
        main_layout.setSystemUiVisibility(View.STATUS_BAR_HIDDEN); 
    } 
    

    zastrzeżenie: „onPrepareDialog” jest przestarzała ...

  2. Jak pokazano we fragmencie powyżej, można uzyskać widoku root identyfikator bez określenia wyraźnej tożsamości w układzie dominującej w pliku XML szablonu , co czyni tę edycję jednym plikiem.