Android 自定义Dialog样式


1.首先在资源里面建立style的value;

  1. <!-- ShareDialog -->  
  2.     <style name="Theme.ShareDialog" parent="Android:style/Theme.Dialog">  
  3.         <item name="android:windowBackground">@drawable/fill_box</item>  
  4.         <item name="android:windowNoTitle">true</item>  
  5.     </style>  
2.drawable/filled_box.xml:
  1. <?xml version="1.0" encoding="utf-8"?>  
  2.   
  3. <selector xmlns:android="http://schemas.android.com/apk/res/android">  
  4.     <shape>  
  5.         <stroke android:width="3dp" />  
  6.         <corners android:radius="3dp" />  
  7.         <padding android:left="10dp" android:top="10dp" android:right="10dp"  
  8.             android:bottom="10dp" />  
  9.     </shape>  
  10.     <item android:drawable="@drawable/dialog_my_bg" />  
  11. </selector> 

3.方法:

  1. public static Dialog getDialog(final Context context, final String name) {  
  2.   
  3.         final Dialog dialog = new Dialog(context, R.style.Theme_ShareDialog);  
  4.   
  5.         dialog.setContentView(R.layout.dialog_share_comment);  
  6.   
  7.         Button btnshare = (Button) dialog.findViewById(R.id.dialog_btn_ok);  
  8.         btnshare.setOnClickListener(new Button.OnClickListener() {  
  9.             public void onClick(View view) {  
  10.   
  11.             }  
  12.         });  
  13.         return dialog;  
  14.     }  
其中 dialog.setContentView(R.layout.dialog_share_comment);是对话框的布局

 new Dialog(context, R.style.Theme_ShareDialog);引用style

4.调用

  1. public void onCreate(Bundle savedInstanceState) {  
  2.       super.onCreate(savedInstanceState);  
  3.       setContentView(R.layout.article_row);  
  4.       getDialog(this"Hie").show();  
  5.   }  

相关内容