加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

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

发布时间:2020-12-14 02:19:52 所属栏目:百科 来源:网络整理
导读:ImageView是我们经常用到的组件,但是我们发现storyboard中图片的属性编辑器中没有对于图片边框的设计。在view中添加一张普通的图片,效果是这样的: 可以看到,白色背景上的深色图片,效果总是有点突兀,我们想要加一个阴影边框来过渡一下图片和背景,打开

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.

现在运行一下看看效果:

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读