Swift--给UIView添加阴影效果

Swift--给UIView添加阴影效果,第1张

  override   init (frame:CGRect) {

       //定义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: +, + 是右下 -,+是左下 +,-是右上 -,-是左上


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11421059.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-16
下一篇2023-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存