android自定义dialog布局

dialog使用系统自带的有时候不是很美观,就想要自己来设计一个dialog界面,以下就是可以设计的dialog界面:

public class CustomDialog extends Dialog {
    int layoutRes;//
    Context context;
    public CustomDialog(Context context) {
        super(context);
        this.context = context;
    }
   
    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);
    }
}
View Code

使用的时候直接实例化,添加布局文件就可以了

CustomDialog dialog=new CustomDialog(this, R.style.customDialog, R.layout.customdialog);

在value/styles.xml中添加dialog的属性

<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>

接下来就可以直接对其像以前的dialog一样操作了。

原文地址:https://www.cnblogs.com/vampirejt/p/4168109.html