dialog的 主题设置

时间:2022-11-01 20:32:20
  • Android自定义Dialog,实际的项目开发中默认的Dialog样式可能满足不了需求,这就需要自行定义Dialog

上图先

dialog的 主题设置

  •   自定义的Dialog类CustomDialog.java
package com.learn.ui.util;

import android.app.Dialog;
import android.content.Context;
import android.os.Bundle;

/** * <p>Title: CustomDialog</p> * <p>Description:自定义Dialog(参数传入Dialog样式文件,Dialog布局文件) </p> * <p>Copyright: Copyright (c) 2013</p> * @author archie * @version 1.0 */
public class CustomDialog extends Dialog {
        int layoutRes;//布局文件
        Context context;
        public CustomDialog(Context context) {
            super(context);
            this.context = context;
        }
        /** * 自定义布局的构造方法 * @param context * @param resLayout */
        public CustomDialog(Context context,int resLayout){
            super(context);
            this.context = context;
            this.layoutRes=resLayout;
        }
        /** * 自定义主题及布局的构造方法 * @param context * @param theme * @param resLayout */
        public CustomDialog(Context context, int theme,int resLayout){
            super(context, theme);
            this.context = context;
            this.layoutRes=resLayout;
        }
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            this.setContentView(layoutRes);
        }
    }
  • 随便写个onClick事件调用一下
public void onClick(View v) {
        switch (v.getId()) {
        case R.id.customDialogBtn:
            CustomDialog dialog=new CustomDialog(this, R.style.customDialog, R.layout.customdialog);
            dialog.show();
        default:
            break;
        }
    }
  •  theme样式文件style.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="customDialog" parent="@android:Theme.Dialog">
        <item name="android:windowFrame">@null</item>
        <item name="android:windowNoTitle">true</item> 
        <item name="android:windowIsFloating">true</item>
        <item name="android:windowContentOverlay">@null</item>
    </style>
</resources>
  • 自定义布局文件customdialog.xml
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="280dip" android:layout_height="wrap_content" android:layout_gravity="center" android:background="#EEEEEE" >

    <LinearLayout  android:id="@+id/layout" android:layout_width="280dip" android:layout_height="fill_parent" android:layout_gravity="center" android:background="#EEEEEE" android:orientation="vertical" android:scrollbars="vertical" >

        <TextView  android:layout_width="fill_parent" android:layout_height="45dip" android:layout_gravity="center_vertical" android:background="#880000" android:gravity="center_vertical" android:paddingLeft="10dp" android:text="自定义Dialog标题" android:textColor="#FFFFFF" android:textSize="20dip" />

        <LinearLayout  android:layout_width="fill_parent" android:layout_height="36dip" android:background="#EEEEEE" android:gravity="center_vertical" android:orientation="horizontal" android:paddingLeft="10dip" >

            <TextView  android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="资源1:" android:textColor="@android:color/black" android:textSize="16dip" />

            <TextView  android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="锤子" android:textColor="@android:color/black" android:textSize="16dip" />
        </LinearLayout>

        <TextView  android:layout_width="fill_parent" android:layout_height="1dip" android:background="#C0C0C0" />

        <LinearLayout  android:layout_width="fill_parent" android:layout_height="36dip" android:background="#EEEEEE" android:gravity="center_vertical" android:orientation="horizontal" android:paddingLeft="10dip" >

            <TextView  android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="资源2:" android:textColor="@android:color/black" android:textSize="16dip" />

            <TextView  android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="毛线" android:textColor="@android:color/black" android:textSize="16dip" />
        </LinearLayout>

        <TextView  android:layout_width="fill_parent" android:layout_height="1dip" android:background="#C0C0C0" />

        <LinearLayout  android:layout_width="fill_parent" android:layout_height="36dip" android:background="#EEEEEE" android:gravity="center_vertical" android:orientation="horizontal" android:paddingLeft="10dip" >

            <TextView  android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="资源3:" android:textColor="@android:color/black" android:textSize="16dip" />

            <TextView  android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="球" android:textColor="@android:color/black" android:textSize="16dip" />
        </LinearLayout>
    </LinearLayout>

</ScrollView>

 over!