swift UI专项训练36 ImageVi图片边框阴影

前端之家收集整理的这篇文章主要介绍了swift UI专项训练36 ImageVi图片边框阴影前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

ImageView是我们经常用到的组件,但是我们发现storyboard中图片属性编辑器中没有对于图片边框的设计。在view中添加一张普通的图片效果是这样的:

可以看到,白色背景上的深色图片效果总是有点突兀,我们想要加一个阴影边框来过渡一下图片和背景,打开图片所属的控制器代码,类中所显示图片名为image,现在来设置它的边框。在viewDidLoad中输入以下代码

 image.layer.backgroundColor = UIColor.orangeColor().CGColor
        image.layer.shadowColor = UIColor.blackColor().CGColor
        image.layer.shadowOffset = CGSizeMake(0,0)
        image.layer.shadowOpacity = 0.5
        image.layer.shadowRadius = 10.0
使用了layer这个属性,command进去看一下layer的源码:
var layer: CALayer { get } // returns view's layer. Will always return a non-nil value. view is layer's delegate

可以看到它是一个CALyer类型的,CALyer类型有非常多的方法,感兴趣的小伙伴可以点进去看看。

注意一下,layer的属性backgroundColor不是我们常用的UIColor类型,是一个CGColor类型的,如果你用强转语句的话是行不通的:

image.layer.backgroundColor = UIColor.orangeColor() as CGColor

或者是
image.layer.backgroundColor = (CGColor) UIColor.orangeColor()

都是行不通的,可行的办法就是以上代码中的,在后面加一个.CGColor.

现在运行一下看看效果

现在边框阴影已经加好了,是不是很炫?

原文链接:https://www.f2er.com/swift/327533.html

猜你在找的Swift相关文章