直接给dialog设置有特殊效果的背景图时,背景四个角总是有阴影,可以设置布局进行管理,完美解决问题
//创建一个自定义的对话框
final NewsCateDialog newsCateDialog = new NewsCateDialog(getActivity());
Window win=newsCateDialog.getWindow();
android.view.WindowManager.LayoutParams lp=win.getAttributes();
win.setBackgroundDrawableResource(android.R.color.transparent);
//在屏幕上的位置
lp.x=20;//设置x坐标
lp.y=-280;//设置y坐标
win.setAttributes(lp);
newsCateDialog.setCanceledOnTouchOutside(true);//设置点击Dialog外部任意区域关闭Dialog
newsCateDialog.show();
newsCateDialog.setOnDismissListener(new DialogInterface.OnDismissListener() {
@Override
public void onDismiss(DialogInterface dialog) {
}
});
最关键的是win.setBackgroundDrawableResource(android.R.color.transparent);
在布局里设置android.R.color.transparent没有效果,必须是在代码里设置
自定义dialog有特殊效果的背景图时,背景四角阴影解决方案
最新推荐文章于 2023-03-08 16:04:30 发布