2010-02-04 7 views
5

J'ai un problème avec mon application. J'utilise l'option plein écran comme ceci:Android: effet de saut de la barre d'état

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

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

Mais, plus tard au cours du jeu, quand je montre le AlertDialog pour l'aide/ Info, la barre d'état revient pour une fraction de seconde et disparaît créer à nouveau un effet clignotant ou sautant. En outre, le dialogue lui-même n'est pas centré comme il se doit, presque comme s'il pensait qu'il y avait une barre d'état.

Voici comment j'afficher la boîte de dialogue:

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; 
} 

Est-ce que quelqu'un sait ce que peut être la cause de cette apparition/disparition? Comment puis-je faire cesser ce comportement de saut?

Merci pour votre aide.

+0

J'ai exactement le même problème, avez-vous trouvé une solution? – fhucho

Répondre

9

définir simplement la fenêtre de dialogue pour fullscreen trop

Dialog mPreviewDialog = new Dialog(this); 

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

Il fixe le clignotement de la barre d'état.