天天看点

Android-自定义dialog布局-修改dialog圆形样式

1.dialog定义圆形样式

首先在drawable里面画个圆形样式,代码如下

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">

    <solid android:color="@color/white" />
    <corners android:radius="30dp" />

</shape>      

然后在设置dialog的时候

mDialog.getWindow().setBackgroundDrawableResource(R.drawable.bg_common);      

然后就可以了。

2.自定义dialog布局

mDialog = new Dialog(this);
mDialog.getWindow().setBackgroundDrawableResource(R.drawable.bg_common);
//将自定义布局设置进去
View inflate = View.inflate(this, R.layout.dialog_shouwen, null);
mDialog.setContentView(inflate);
      
//dialog背景透明
mDialog.getWindow().setBackgroundDrawableResource(android.R.color.transparent);
//去除遮罩
mDialog.getWindow().setDimAmount(0f);      
//设置点击其它地方让消失弹窗
mDialog.setCancelable(true);
//初始化子布局控件
initDialogView(inflate);
//关联点击事件
initDialogListener();      

自定义布局添加到dialog里面的话,dialog的延展性跟灵活性都会大幅度提高。用户体验以及我们的开发任务都是变得很轻松。