2017-10-21 22 views
0

Je suis confus lorsque j'utilise des styles de dialogue d'alerte personnalisés dans mon application, car mon application contient plusieurs thèmes. J'ai trois thèmes dans mon application, appelés themeGrey, themeTeal et themePink. J'ai un style de dialogue d'alerte comme ci-dessousStyle d'alerte personnalisé avec plusieurs thèmes

style name="AlertDialogTheme" parent="Theme.AppCompat.Light.Dialog.Alert"> 

     <item name="android:textColorPrimary">@color/colorAccent</item> 
     <item name="android:textColor">@color/colorAccent</item> 
     <item name="android:background">@color/colorPrimaryDark</item> 
     <item name="colorAccent">@color/colorAccent</item> 
     <item name="textColorAlertDialogListItem">@color/colorAccent</item> 
     <item name="android:textColorSecondary">@color/colorAccent</item> 

    </style> 

Je l'ai utilisé dans mon application comme ci-dessous

mProgress = new ProgressDialog((this), R.style.AlertDialogTheme); 

Maintenant, ma question est, comment puis-je définir un style différent pour chaque thème? Je ne veux pas appliquer avec un conditionnel. Puis-je le faire en déclarant un thème comme un élément? Merci

Répondre

0

J'ai résolu le style retirant du code java comme ci-dessous

mProgress = new ProgressDialog((this)); 

et delcared le style d'alerte dans le thème comme ci-dessous

<item name="android:alertDialogTheme">@style/AlertDialogThemeTeal</item> 

Merci