2017-09-25 5 views
-2

Voici mon code pour créer Dialog,Comment changer la couleur du bouton dans Alert Dialog

   builder.setMessage(msg).setNeutralButton("Dismiss",dialogClickListener).setPositiveButton("Edit", dialogClickListener) 
        .setNegativeButton("Delete", dialogClickListener).show(); 

Est-il possible d'afficher en couleur bleue rejeter plutôt que le rouge?

+0

essayer https://stackoverflow.com/questions/39930505/change-color-of-button-in-alertdialog-builder –

+0

double possible de [Changer la couleur du bouton AlertDialog.Builder] (https://stackoverflow.com/questions/39930505/change-color-of-button-in-alertdialog-builder) –

+0

La réponse donnée ci-dessous par Sheikh m'apprend sur AlertDialog dialog = builder.create(); La réponse par Brahmy adigopula dans la question originale se réfère juste à AlertDialog.show sur le bleu – alberto

Répondre

0

d'abord, créez AlertDialog du constructeur:

AlertDialog dialog = builder.create(); 

Ensuite, vous pouvez trouver votre bouton et changer de couleur:

dialog.show(); //Only after .show() was called 
dialog.getButton(dialog.BUTTON_NEGATIVE).setTextColor(your_color); 
dialog.getButton(dialog.BUTTON_POSITIVE).setTextColor(your_color); 
dialog.getButton(dialog.BUTTON_NEUTRAL).setTextColor(your_color); 

Ici vous utilisez method:

void setTextColor (int color) 
    Sets the text color for all the states (normal, selected, focused) to be this color. 
Parameters 
    color int: A color value in the form 0xAARRGGBB. Do not pass a resource ID. To get a color value from a resource ID, call getColor. 
+0

Merci, une petite réponse énigmatique, mais il m'a indiqué la bonne direction, maintenant cela fonctionne. – alberto

0

Oui, il est possible, changer la couleur de style et vous pouvez définir un style personnalisé pour votre boîte de dialogue comme ci-dessous:

<style name="AlertDialogCustom" parent="android:Theme.Material.Light.Dialog.Alert"> 
    <item name="android:colorPrimary">yourColorCode</item> 
    <item name="android:colorAccent">yourColorCode</item> 
</style>