HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – 在uitableviewcell / uiimageview的底部添加阴影渐变大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
有谁知道如何在uitableviewcell或uiimageview的底部添加渐变,如下图所示?

解决方法

将此类添加项目中( swift):
class UIGradientImageView: UIImageView {

let myGradientLayer: CAGradientLayer

 override init?(frame: CGRect){
    myGradientLayer = CAGradientLayer()
    super.init(frame: framE)
    self.setup()
    addGradientLayer()
 }

 func addGradientLayer(){
    if myGradientLayer.superlayer == nil{
        self.layer.addSublayer(myGradientLayer)
    }
 }

 required init(coder aDecoder: NSCoder){
    myGradientLayer = CAGradientLayer()
    super.init(coder: aDecoder)
    self.setup()
    addGradientLayer()
 }

 func getColors() -> [CGColorRef] {
    return [UIColor.clearColor().CGColor,UIColor(red: 0,green: 0,blue: 0,alpha: 0.5).CGColor]
 }

 func getLOCATIOns() -> [CGFloat]{
    return [0.5,0.9]
 }

 func setup() {
     myGradientLayer.startPoint = CGPoint(x: 0.5,y: 0)
     myGradientLayer.endPoint = CGPoint(x: 0.5,y: 1)

     let colors = getColors()
     myGradientLayer.colors = colors
     myGradientLayer.opaque = false
     myGradientLayer.LOCATIOns = getLOCATIOns()
 }

 override func layoutSubviews() {
    super.layoutSubviews()
    myGradientLayer.frame = self.layer.bounds
 }
}

更新:Objective-C翻译解决方案.积分@SleepsOnNewspapers.

#import "UIGradientImageView.h"

 @interface UIGradientImageView()

  @property (nonatomic,strong) CAGradientLayer *myGradientLayer;

 @end

 @implementation UIGradientImageView

 -(instanCETypE)initWithFrame:(CGRect)frame{

 if(self){
  self = [super initWithFrame:frame];
  self.myGradientLayer = [[CAGradientLayer alloc]init];
  [self setup];
  [self addGradientLayer];
  }
 return self;
 }

 -(instanCETypE)initWithCoder:(NSCoder *)aDecoder{

 if(self){
   self = [super initWithCoder:aDecoder];
   self.myGradientLayer = [[CAGradientLayer alloc]init];
   [self setup];
   [self addGradientLayer];
  }
  return self;
 }

 -(void)addGradientLayer{
 if (self.myGradientLayer.superlayer == nil) {
  [self.layer addSublayer:self.myGradientLayer];
 }
}

将故事板上的UIImageView类设为此类而不是认类.

大佬总结

以上是大佬教程为你收集整理的ios – 在uitableviewcell / uiimageview的底部添加阴影渐变全部内容,希望文章能够帮你解决ios – 在uitableviewcell / uiimageview的底部添加阴影渐变所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。