
//定义view的大小
let selfFrame =CGRect(x:0, y:0, width:kScreenW-75, height:kScreenW*0.93)
super .init(frame: selfFrame)
//定义view的背景颜色
backgroundColor = .white
//定义view的角度
layer.cornerRadius = 5
//定义view的阴影颜色
layer.shadowColor = UIColor.colorWidthHexString(hex: "#000000").cgColor
//阴影偏移量
layer.shadowOffset=CGSize(width:0, height:1)
//定义view的阴影宽度,模糊计算的半径
layer.shadowRadius = 10
//定义view的阴影透明度,注意:如果view没有设置背景色阴影也是不会显示的
layer.shadowOpacity = 0.1
}
在通过这样的方式设置阴影时,必须把父视图的masksToBounds属性关掉,因为阴影设置的方式就是加offset给超出视图部分设置颜色来实现的,一旦不让子视图超出,阴影也就看不出了。
圆角+阴影:
如果上面的方法一起用,把masksToBounds开了,阴影无法显示,关了的话其上的View又会遮住圆角。解决的方式只能是再加一层layer。
swift版:
shadowoffset: +, + 是右下 -,+是左下 +,-是右上 -,-是左上
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)