我有一个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
链接到您的应用程序,以使一切正常。