Android自定义形状对话框
我正在尝试在android中创建一个自定义形状的对话框。我想要的不是矩形的形状,而是我想要创建的任何形状。例如,放置一个自定义背景,它是一个圆形的png图像 如果我这样做,圆圈外的区域将被白色填充,以填充对话框的矩形。我需要的是只隐藏圆形和布局的其余部分。希望这是有意义的Android自定义形状对话框,android,custom-component,Android,Custom Component,我正在尝试在android中创建一个自定义形状的对话框。我想要的不是矩形的形状,而是我想要创建的任何形状。例如,放置一个自定义背景,它是一个圆形的png图像 如果我这样做,圆圈外的区域将被白色填充,以填充对话框的矩形。我需要的是只隐藏圆形和布局的其余部分。希望这是有意义的 据我所知,这是不可能的,但还是可能有人有一些好主意?谢谢 解决方法是使用透明背景色(ARGB#00000000或Color.transparent)自定义对话框。之后,使用可绘制的XML作为背景向自定义对话框添加线性布局。在该
据我所知,这是不可能的,但还是可能有人有一些好主意?谢谢 解决方法是使用透明背景色(ARGB#00000000或Color.transparent)自定义对话框。之后,使用可绘制的XML作为背景向自定义对话框添加线性布局。在该XML中,指定边界半径以使布局成为圆形。接下来,将另一个布局添加到该线性布局,并将宽度和高度设置为“填充”,将背景设置为圆形图像。最后,将其余的对话组件添加到第二个布局中
我记得在过去实现过这种效果,但手头没有代码来查看确切的语法。嗯,我实际上找到了我想要的:
final Dialog d = new Dialog(this,android.R.style.Theme_Translucent_NoTitleBar_Fullscreen);
d.setContentView(R.layout.custom);
d.setCanceledOnTouchOutside(true);
d.setCancelable(true);
return d;
对话框构造器让我把它透明,然后我可以做任何我想在我的背景布局png图像与任何形状我想要的。不需要android形状或边框。这很容易涵盖任何形状,而不仅仅是圆形/矩形等。只要您根据对话框设计管理布局。这似乎是合法的。我会尝试一下,然后带着一些反馈回来。这很好,非常感谢。我有这个功能,但我不想让它全屏显示,所以我只使用了android.R.style.Theme\u transparent\u NoTitleBar。但我仍然想让对话框外的区域变暗,而一旦我使背景半透明,它就不会这样做。你知道怎么做吗?