2010-02-04 5 views
5

Mam problem z moją aplikacją. Używam opcja pełnego ekranu tak:Android: efekt skoku paska stanu

public void setFullscreen() { 
    requestWindowFeature(Window.FEATURE_NO_TITLE); 

    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
     WindowManager.LayoutParams.FLAG_FULLSCREEN); 
} 

Ale później w trakcie gry, kiedy pokazują AlertDialog o pomoc/ informacji na pasku stanu wraca na ułamek sekundy i znika tworzenia efekt migania lub skoku. Również okno dialogowe nie jest wyśrodkowane tak, jak powinno, prawie tak, jakby był w stanie wyświetlić pasek stanu.

Oto jak wyświetlić okno dialogowe:

protected Dialog onCreateDialog(int id) { 
TextView tv; 

switch (id) { 
case MENU_HELP: 
     tv = new TextView(this); 
        tv.setText(R.strings.help_msg); 

     return new AlertDialog.Builder(BlackJackView.this) 
     .setIcon(android.R.drawable.ic_menu_help) 
     .setTitle("How-To") 
     .setView(tv) 
     .setPositiveButton("OK", new DialogInterface.OnClickListener() { 
        public void onClick(DialogInterface dialog, int whichButton) { 
          /* User clicked OK so do some stuff */ 
        } 
     }) 
     .create(); 
    } 

    ……… 

    } 
    return null; 
} 

Czy ktoś wie co może być przyczyną to pojawia się/znika? Jak sprawić, żeby przestało to zachowywać się podczas skoków?

Dzięki za pomoc.

+0

Mam dokładnie ten sam problem, czy znalazłeś rozwiązanie? – fhucho

Odpowiedz

9

Wystarczy ustawić okno dialogowe, aby tryb pełnoekranowy zbyt

Dialog mPreviewDialog = new Dialog(this); 

Window dialog_window = mPreviewDialog.getWindow(); 
dialog_window.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 
mPreviewDialog.show() 

Ustaliła ona pulsowanie pasku stanu.