效果图:
一、普通的圆角dialog
实现思路
1继承dialog
MyDialog extends Dialog
在构造方法中调用样式 super(context, R.style.CustomDialog);
2可以在dialog的布局文件中设置窗口的大小了
下面一步一步贴出代码:
MyDialog类
package com.zhh.android;
import android.app.Dialog;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
/**
* Created by 16838 on 2019/1/6.
*/
public class MyDialog extends Dialog {
/**
* 构造方法设置样式
* 最重要的地方
* @param context
*/
protected MyDialog(final Context context) {
// 设置样式
super(context, R.style.CustomDialog);
}
/**
*
*引入布局文件,并显示
*/
public View createView(Context context,int dialog_layout){
// 放入布局文件
LayoutInflater inflate = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
// 布局转成View对象
View view = inflate.inflate(dialog_layout, null);
// 显示布局
setContentView(view);
return view;
}
}
res ----value---- styles.xml 中添加样式
<!-- 定义dialog的样式-->
<style name="CustomDialog" parent="android:style/Theme.Dialog">
<!--背景颜色及和透明程度-->
<item name="android:windowBackground">@android:color/transparent</item>
<!--是否去除标题 -->
<item name="android:windowNoTitle">true</item>