drawRect

时间:2016-08-04 22:45:08

标签: ios swift subclass drawrect cgcontext

我有一个UIView的子类覆盖了drawRect。在其中,我使用CGBlendModes为硬币图形提供视觉效果。像魅力一样工作(没有双关语意为哈哈)。我想在drawRect中设置CGContextSetFillColor alpha属性的动画,以给出硬币脉冲/发光的外观。

这就是我所拥有的:

class CoinView: UIView {

override func drawRect(rect: CGRect) {
    let largeCoin = UIImage(named: "coin")!
    let context: CGContextRef = UIGraphicsGetCurrentContext()!
    var testAlpha:CGFloat = 1.0

    CGContextSetFillColor(context, CGColorGetComponents(UIColor(red: 191/255, green: 217/255, blue: 56/255, alpha: testAlpha).CGColor))
    CGContextClipToMask(context, rect, largeCoin.CGImage)
    CGContextFillRect(context, rect)
    largeCoin.drawInRect(rect, blendMode: CGBlendMode.ColorBurn, alpha: 1.0)

    UIView.animateWithDuration(5.0) {
        testAlpha = 1.0
    }
}
}

我尝试在drawRect中编写动画块,动画化CGBlendMode的alpha属性(testAlpha)。

什么都没发生。动画根本不会发射。 CGContextSetFillColor方法提供了视觉效果,所以我认为它试图为它设置动画。

这里的任何指针都表示赞赏。如何使用CGBlendMode为图像赋予“脉冲”效果。

由于

0 个答案:

没有答案