2016-09-12 47 views
0

我想添加一个渐变蒙版,而不是对单元格的颜色透明。向单元格添加透明渐变蒙版

这应该淡出最后一行文字。所以我给我的细胞添加了UIView,并尝试使用:

 let gradient: CAGradientLayer = CAGradientLayer() 
     gradient.frame = cell.gradientFooterView.frame 
     gradient.colors = [UIColor.clearColor().CGColor, UIColor(rgba: item.color).CGColor] 
     cell.gradientFooterView.layer.insertSublayer(gradient, atIndex: 0) 

但没有成功。我怎样才能创建一个透明的面具?

回答

1

看来你错过了位置,星河亮点和渐变的终点 可以修改这段代码accordly您的需要

var maskLayer = CAGradientLayer() 
maskLayer.frame = self.collectionView.bounds 
let black = UIColor.whiteColor().CGColor 
let clear = UIColor(white: 1, alpha: 0).CGColor 
maskLayer.colors = [black, clear, clear, black] 
maskLayer.locations = [0.0, 0.15, 0.85, 1.0] 
maskLayer.startPoint = CGPointMake(0.0, 0.0) 
maskLayer.endPoint = CGPointMake(1.0, 0.0) 
yourview.layer.addSublayer(maskLayer) 
0

刚刚尝试这一点,我已经在我的代码测试此。我刚刚使用了单元格颜色,而不是清晰的颜色。

if let vw = cell.contentView.viewWithTag(11) { 
     let gl = CAGradientLayer() 
     gl.colors = [UIColor.whiteColor().CGColor, UIColor.yellowColor().CGColor] 
     gl.frame = vw.bounds 
     gl.startPoint = CGPointMake(0.0, 0.0) 
     gl.endPoint = CGPointMake(0.0, 1.0) 
     vw.layer.insertSublayer(gl, atIndex: 0) 
    }