今天开发过程中遇到这样一个问题,在shape中设置圆角效果无效,不管android:radius都看不出改变的效果。经查证原因是弹窗有一个默认的背景色,radius背景色和弹窗默认背景色重叠,因此看不出效果。修正办法:去掉弹窗默认的背景色,在相对应的弹窗类中调用以下代码即可:
getWindow().setBackgroundDrawableResource(android.R.color.transparent);
备注:获取设备屏幕对应像素方式:
getContext().getResources().getDisplayMetrics().density
这样可以将UI根据获取到的像素调整到对应的像素,获取相应字体大小