【问题标题】:Gradient mask not showing渐变蒙版不显示
【发布时间】:2017-06-07 18:48:02
【问题描述】:

我正在尝试绘制渐变,逐渐变暗。

我看不出绘画有什么影响。尝试改变颜色。框架看起来不错。为什么不显示这种不透明度淡化?

func createGradient() {
        let h = UIScreen.mainScreen().bounds.size.height
        let y = collectionView.frame.origin.y + (cellSize() * 3)
        let v = UIView(frame: CGRect(x: 0, y: y, width: collectionView.frame.size.width, height: h - y))

        let l = CAGradientLayer()
        l.frame = v.bounds
        l.colors = [UIColor.greenColor().CGColor, UIColor.blueColor().CGColor]

        l.startPoint = CGPoint(x: CGFloat(0.5), y: CGFloat(0.0));
        l.endPoint = CGPoint(x: CGFloat(0.5), y: CGFloat(1.0));
        v.layer.mask = l;
        view.addSubview(v)
    }

我的日志:

(lldb) po l
<CAGradientLayer:0x618000228b00; position = CGPoint (207 101); bounds = CGRect (0 0; 414 202); allowsGroupOpacity = YES; colors = (
    "<CGColor 0x6180000b2c00> [<CGColorSpace 0x6100000376c0> (kCGColorSpaceICCBased; kCGColorSpaceModelRGB; sRGB IEC61966-2.1; extended range)] ( 0 1 0 1 )",
    "<CGColor 0x6180000b2c60> [<CGColorSpace 0x6100000376c0> (kCGColorSpaceICCBased; kCGColorSpaceModelRGB; sRGB IEC61966-2.1; extended range)] ( 0 0 1 1 )"
)>

(lldb) po v
<UIView: 0x7fe1b3d1d3b0; frame = (0 534; 414 202); layer = <CALayer: 0x618000228880>>

(lldb) 

【问题讨论】:

    标签: swift quartz-core


    【解决方案1】:

    v.layer.mask = l 替换为v.layer.addSublayer(l)

    func createGradient() {
            let h = UIScreen.mainScreen().bounds.size.height
            let y = collectionView.frame.origin.y + (cellSize() * 3)
            let v = UIView(frame: CGRect(x: 0, y: y, width: collectionView.frame.size.width, height: h - y))
    
            let l = CAGradientLayer()
            l.frame = v.bounds
            l.colors = [UIColor.greenColor().CGColor, UIColor.blueColor().CGColor]
    
            l.startPoint = CGPoint(x: CGFloat(0.5), y: CGFloat(0.0));
            l.endPoint = CGPoint(x: CGFloat(0.5), y: CGFloat(1.0));
            v.layer.addSublayer(l)
            view.addSubview(v)
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多