What is the best way to create a shadow behind a UIImageView(在 UIImageView 后面创建阴影的最佳方法是什么)
问题描述
我有一个 UIImageView,我想在后面添加一个阴影.我希望苹果有这个属性,但他们不得不让我们程序员做很多事情,所以我需要问这个问题.
I have a UIImageView that I want to add a shadow behind. I wish that apple had that as a property but they have to make lots of things hard for us programmers so I need to ask this question.
推荐答案
有一种更好、更简单的方法可以做到这一点.UIImageView 继承自 UIView 所以它有一个 layer 属性.您可以访问图层的阴影属性和 bam,您得到了一个阴影.
There's a better and easier way to do this. UIImageView inherits from UIView so it has a layer property. You can access the layer's shadow properties and bam, you got a shadow.
如果您将 UIImageView 作为 IBOutlet 指向 nib 文件,则只需实现 awakeFromNib例如
If you have the UIImageView as an IBOutlet to a nib file, you can just implement the awakeFromNib e.g.
Objective-C
- (void)awakeFromNib {
imageView.layer.shadowColor = [UIColor purpleColor].CGColor;
imageView.layer.shadowOffset = CGSizeMake(0, 1);
imageView.layer.shadowOpacity = 1;
imageView.layer.shadowRadius = 1.0;
imageView.clipsToBounds = NO;
}
别忘了#import "QuartzCore/CALayer.h"
对于 Swift,您可以采取多种方式.创建类扩展、子类或 imageView 实例.无论哪种方式,修改layers shadow属性的过程都是一样的.
For Swift, you can go about it multiple ways. Create a class extension, subclass, or an imageView instance. Whichever the way, the process is the same in modifying the layers shadow property.
斯威夫特 3
override func awakeFromNib() {
super.awakeFromNib()
imageView.layer.shadowColor = UIColor.purple.cgColor
imageView.layer.shadowOffset = CGSize(width: 0, height: 1)
imageView.layer.shadowOpacity = 1
imageView.layer.shadowRadius = 1.0
imageView.clipsToBounds = false
}
这篇关于在 UIImageView 后面创建阴影的最佳方法是什么的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:在 UIImageView 后面创建阴影的最佳方法是什么
基础教程推荐
- navigator.geolocation.getCurrentPosition 在 Android 浏览器上 2022-01-01
- 如何从 logcat 中删除旧数据? 2022-01-01
- NSString intValue 不能用于检索电话号码 2022-01-01
- Android:getLastKnownLocation(LocationManager.NETWORK_PROVIDER 2022-01-01
- Cocos2d iPhone 非矩形精灵触摸检测 2022-01-01
- iPhone - 获取给定地点/时区的当前日期和时间并将其与同一地点的另一个日期/时间进行比较的正确方法 2022-01-01
- AdMob 广告未在模拟器中显示 2022-01-01
- 通过重定向链接在 Google Play 中打开应用 2022-01-01
- iOS4 创建后台定时器 2022-01-01
- libGDX 从精灵或纹理中获取像素颜色 2022-01-01
