因为项目需求,不能使用Style文件设置Dialog的格式。这可就愁了宝宝了,在网上搜索了一下,基本上都是使用Style文件设置的。
创新互联建站专注于中大型企业的成都网站设计、成都网站建设和网站改版、网站营销服务,追求商业策划与数据分析、创意艺术与技术开发的融合,累计客户成百上千家,服务满意度达97%。帮助广大客户顺利对接上互联网浪潮,准确优选出符合自己需要的互联网运用,我们将一直专注品牌网站设计和互联网程序开发,在前进的路上,与客户一起成长!
1、Dialog的默认背景的设置
通常情况下对话框有一个window级别的背景,就是我们通常遇到的Dialog周围有黑色的阴影背景。使用代码:
this.getWindow().setBackgroundDrawableResource(R.drawable.bg_text_bounced); this.getWindow().setBackgroundDrawable(Drawable);
一般都是设置成圆角的,所以自己切一个圆角背景图就好了,这个this指的是Dialog,千万不要获取上下文的getWindow,这个window设置了还是没有效果,所以一定在Dialog的Window设置背景
dialog.getWindow().setBackgroundDrawableResource(R.drawable.bg_text_bounced); dialog.getWindow().setBackgroundDrawable(Drawable);
2、其他的属性设置
这里我并没有使用Style文件,其实也就是Dialog默认的Style,默认的话一般都会有对话框的父背景即我上面说的window的背景,其次就是对话框自定义的背景。
我们可以在代码中尝试不使用Style然后设置一下下面这些代码,试试效果。
(1)设置不显示对话框标题。这个标题其实每个Activity也都有,这个和Activity设置不显示标题是一样的:requestWindowFeature(Window.FEATURE_NO_TITLE);
(2)去阴影,这里指的是一般对话框之外的部分有个灰色的接近透明的阴影层,设置这个相当于去掉这个阴影层:getWindow().clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
(3)设置背景,就是我在1中描述的,这个Drawable就是我自己对话框要实现的Drawable背景:getWindow().setBackgroundDrawableResource(R.drawable.vip_p);
(4)设置内容的透明度:
WindowManager.LayoutParams wmParams =getWindow().getAttributes();
//wmParams.format = PixelFormat.TRANSPARENT; 内容全透明
wmParams.format=PixelFormat.TRANSLUCENT;//内容半透明
wmParams.alpha=1.0f;//调节透明度,1.0最大
//dialog设置各种属性
getWindow().setAttributes(wmParams);
3、暂时先想起来以上两个,之后想起来再继续补充。还有,这个明明是自己写的,为啥说是超别人的,本身代码就是这样,不理解代码写的一样就是转载的别人么?
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款