ios - UIView 上的渐变蒙版

标签 ios swift uikit gradient

我有一个 UIView,想要让它的底部淡出到 0 不透明度。

可以对 UIView (CALayer) 执行此操作以影响整个 UIView 及其内容吗?

最佳答案

是的,您可以通过设置 CAGradientLayer 来做到这一点作为 View 的图层蒙版:

#import <QuartzCore/QuartzCore.h>

...

CAGradientLayer *maskLayer = [CAGradientLayer layer];

maskLayer.frame = view.bounds;
maskLayer.colors = @[(id)[UIColor whiteColor].CGColor, (id)[UIColor clearColor].CGColor];
maskLayer.startPoint = CGPointMake(0.5, 0);
maskLayer.endPoint = CGPointMake(0.5, 1.0);

view.layer.mask = maskLayer;

P.S.您还需要将 QuartzCore.framework 链接到您的应用程序才能正常工作。

关于ios - UIView 上的渐变蒙版,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7506852/

相关文章:

ios - 将 UIImage 转换为 NSData 并在 Swift 中转换回 UIImage?

iOS/OSX 应用程序组 ID,以 "group."或 "team-id."开头?

ios - 如何在 Swift 中使用 UIKit 注册多个按钮点击?

ios - 开发过程中是否需要 dSYM 文件?

objective-c - 从 UITabBarController 中删除所有项目

ios - 如何在 Swift 的 textView 中突出显示文本?

ios - 启用 significantChange 禁用位置

ios - UICollectionViewCell 不出现

iphone - 使用 iPhone 多点触控键盘搜索按钮

ios - Swift UITabBarItem 作为 UIButton