Change button color in AlertDialog

后端 未结 16 2306

How can I change the color of the button(s) in an AlertDialog in Android?

相关标签:
16条回答
  • 2020-12-02 23:11

    To Change the Buttons color of the AlertDailog

    Code:

    // Initialize AlertDialog & AlertDialog Builder
    AlertDialog.Builder builder = new AlertDialog.Builder(YourActivity.this);
    builder.setTitle(R.String.AlertDialogTitle);
    ...........
    ......... 
    //Build your AlertDialog 
    AlertDialog Demo_alertDialog= builder.create();
    Demo_alertDialog.show();
    
    //For Positive Button:
    Button b_pos; 
    b_pos=Demo_alertDialog.getButton(DialogInterface.BUTTON_POSITIVE);
    if(b_pos!=null){
       b_pos.setTextColor(getResources().getColor(R.color.YourColor));
       }    
    
    
    //For Neutral Button:
    Button b_neu;
    b_neu=Demo_alertDialog.getButton(DialogInterface.BUTTON_NEUTRAL);
    if(b_neu!=null){
       b_neu.setTextColor(getResources().getColor(R.color.YourColor));
       }
    
    //For Negative Button:
    Button b_neg;
    b_neg=Demo_alertDialog.getButton(DialogInterface.BUTTON_NEGATIVE);
    if(b_neg!=null){
       b_neg.setTextColor(getResources().getColor(R.color.YourColor));
       }
    
    0 讨论(0)
  • 2020-12-02 23:12
        //el resto
        AlertDialog a=alertDialog.create();
        cambiar_color_texto_alertdialog(a);
    
    }
    
    public void cambiar_color_texto_alertdialog(AlertDialog a){
        a.show();
        Button BN = a.getButton(DialogInterface.BUTTON_NEGATIVE);
        BN.setTextColor(parseColor("#2E9AFE"));
        Button BA = a.getButton(DialogInterface.BUTTON_POSITIVE);
        BA.setTextColor(parseColor("#2E9AFE"));
    }
    
    0 讨论(0)
  • 2020-12-02 23:13

    I wanted to solve this with themes rather than extra code since it feels cleaner to me to have all the styling-related stuff in the styles.xml. What I did was based on Arade's answer and this other question:

    <style name="AlertDialogDanger" parent="Theme.AppCompat.Light.Dialog.Alert">
        <item name="colorAccent">@color/error</item>
    </style>
    

    This will change the color of the button text of any alert dialog you create with style AlertDialogDanger. To do so:

        new AlertDialog.Builder(new ContextThemeWrapper(this, R.style.AlertDialogDanger))
                .setMessage("Really delete?")
                .setPositiveButton("Delete", null)
                .setNegativeButton("Cancel", null)
                .create().show();
    
    0 讨论(0)
  • 2020-12-02 23:16

    I have done by this code it might help you:

    AlertDialog.Builder builder1 = new AlertDialog.Builder(this); 
            builder1.setCancelable(true);
         builder1.setTitle("abc");
          builder1.setMessage("abcdefg");
          builder1.setInverseBackgroundForced(true);
         builder1.setPositiveButton("Yes",
                 new DialogInterface.OnClickListener() {
             public void onClick(DialogInterface dialog, int id) {
                 dialog.cancel();
             }
         }); 
    
         builder1.setNegativeButton("No",
                 new DialogInterface.OnClickListener() {
             public void onClick(DialogInterface dialog, int id) {
                 dialog.cancel();
             }
         });
    
         AlertDialog alert11 = builder1.create();
         alert11.show(); 
    
         Button buttonbackground = alert11.getButton(DialogInterface.BUTTON_NEGATIVE); 
         buttonbackground.setBackgroundColor(Color.BLUE); 
    
         Button buttonbackground1 = alert11.getButton(DialogInterface.BUTTON_POSITIVE); 
         buttonbackground1.setBackgroundColor(Color.BLUE);
    
    0 讨论(0)
提交回复
热议问题