La méthode getWindow() n'est pas défini pour le type AlertDialog.Constructeur
Idée reprise de Android: le Flou et la gradation de fond des fenêtres de dialogue. Je vais avoir du mal à obtenir le contenu sous mon dialogue de flou. Lors de l'appel cluf.getWindow() que je reçois cette erreur:
La méthode getWindow() n'est pas défini pour le type AlertDialog.Générateur de
Le cluf est affiché avec ce morceau de code de l'activité principale:
EulaHelper.showEula(false, this);
Toute aide est grandement appréciée.
public static void showEula(final boolean accepted, final FragmentActivity activity) {
AlertDialog.Builder eula = new AlertDialog.Builder(activity)
.setTitle(R.string.eula_title)
.setIcon(android.R.drawable.ic_dialog_info)
.setMessage(activity.getString(R.raw.eula))
.setCancelable(accepted);
if (accepted) {
//If they've accepted the EULA allow, show an OK to dismiss.
eula.setPositiveButton(android.R.string.ok,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
} else {
//If they haven't accepted the EULA allow, show accept/decline buttons and exit on
//decline.
eula
.setPositiveButton(R.string.accept,
new android.content.DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
setAcceptedEula(activity);
dialog.dismiss();
}
})
.setNegativeButton(R.string.decline,
new android.content.DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
activity.finish();
}
});
}
eula.show();
WindowManager.LayoutParams lp = eula.getWindow().getAttributes();
lp.dimAmount = 0.0F;
eula.getWindow().setAttributes(lp);
eula.getWindow().addFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND);
}
OriginalL'auteur Bill Mote | 2011-12-16
Vous devez vous connecter pour publier un commentaire.
getWindow()
est une méthode de la classe de boîte de dialogue, pas de la boîte de dialogue générateur de rapports. Votre code doit plutôt ressembler à ceci:Noter, cependant, que la
FLAG_BLUR_BEHIND
constante est obsolète maintenant, le flou derrière windows est n'est plus pris en charge. Si votre code risque de rupture dans l'avenir.OriginalL'auteur
eula
est le Constructeur, et non à la boîte de dialogue elle-même. Essayez:Pas de soucis, nous avons fait nos réponses exactement en même temps 🙂
OriginalL'auteur Guillaume