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.

现在运行一下看看效果

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

相关文章

软件简介:蓝湖辅助工具,减少移动端开发中控件属性的复制和粘...
现实生活中,我们听到的声音都是时间连续的,我们称为这种信...
前言最近在B站上看到一个漂亮的仙女姐姐跳舞视频,循环看了亿...
【Android App】实战项目之仿抖音的短视频分享App(附源码和...
前言这一篇博客应该是我花时间最多的一次了,从2022年1月底至...
因为我既对接过session、cookie,也对接过JWT,今年因为工作...