2016-12-26 5 views
2

Я хочу знать, как изменить дизайн моего AlertDialog, кнопки фона.Изменить фон AlertDialog

спасибо.

new AlertDialog.Builder(this) 
       .setTitle("Exit") 
       .setMessage("Do you want to exit") 
       .setPositiveButton("Yes", new DialogInterface.OnClickListener() { 
        public void onClick(DialogInterface dialog, int which) { 
          finish(); 
        } 
       }) 
       .setNegativeButton("No", new DialogInterface.OnClickListener() { 
        public void onClick(DialogInterface dialog, int which) { 
         // do nothing 
        } 
       }) 
       .setIcon(android.R.drawable.ic_menu_zoom) 
       .show(); 
    } 
+0

Вы можете описать вашу проблему более @DesignMan. –

+0

вы можете создать макет с нужным дизайном и установить тот же макет в диалоговом окне предупреждения. –

+0

да, но как я могу сделать это как AlertDialog, я имею в виду, как я могу определить высоту и ширину моего нового макета! – DesignMan

ответ

0
AlertDialog.Builder alertDialog_ImageSelector=new AlertDialog.Builder(mcontext); 
        View imageGuideLineInfo=getActivity().getLayoutInflater().inflate(R.layout.your_alyout,null); 
        alertDialog_ImageSelector.setView(imageGuideLineInfo); 
        TextView tv_guidelines=(TextView)imageGuideLineInfo.findViewById(R.id.tv_guidelines); 
        final AlertDialog adinfo=alertDialog_ImageSelector.create(); 
        adinfo.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));//here you can change the background of alertDialog. 
        adinfo.show(); 

, если вы хотите изменить цвет фона кнопки, то вам нужно создать кнопки в your_view.xml и связать их здесь и setBackground.

+0

, не могли бы вы объяснить больше для кнопок; Пожалуйста. – DesignMan

+0

Эти кнопки вы должны создать их в своем макете и связать их здесь. как я это сделал для TextView. теперь я могу установить фон для TextView как tv.setBackgroundColor (Color.RED), в вашем случае это должна быть кнопка –

+0

Спасибо большое @ Rushi Ayyappa! – DesignMan

0

использовать этот андроид встроенные темы

AlertDialog.Builder builder = new AlertDialog.Builder(this, AlertDialog.THEME_DEVICE_DEFAULT_LIGHT);