如何从顶部而不是底部制作Hokusai弹性动作表Pod动画

时间:2017-01-21 03:03:27

标签: ios swift swift3 cocoapods cgrect

首先,我想在序言中说我知道这个问题的范围非常小,特定于许多人可能从未使用或甚至没有听说过的一个吊舱。但是,如果有人遇到过与我相同的问题,或者想要进行一些挖掘并帮助我,那么一些见解将会得到极大的认可。

Hokusai是由ytakzk制作的Pod,它反映了Skype的操作表,从页面底部反弹。

我一直在查看代码,尝试进行必要的更改,使其与y轴完全相反,从顶部向下弹回,然后在解除时退回到顶部。

我对CGRects目前并不熟悉(目前正在学习!)所以很难理解操作的内容和位置。

感谢阅读,希望有人能够帮助我,它是最受欢迎的播客之一,所以如果你确实创造了一个可行的解决方案,我相信你最终也会帮助数百个其他人!

我觉得这个方法在这个方法的某个地方,所以我把它包括在内,虽然This is a link to the .swift file on GitHub如果你认为它可能是别的东西。

func updatePath() {
    let width  = CGRectGetWidth(shapeLayer.bounds)
    let height = CGRectGetHeight(shapeLayer.bounds)

    let path = UIBezierPath()
    path.moveToPoint(CGPoint(x: 0, y: 0))
    path.addQuadCurveToPoint(CGPoint(x: width, y: 0),
        controlPoint:CGPoint(x: width * 0.5, y: 0 + bendableOffset.vertical))
    path.addQuadCurveToPoint(CGPoint(x: width, y: height + 100.0),
        controlPoint:CGPoint(x: width + bendableOffset.horizontal, y: height * 0.5))
    path.addQuadCurveToPoint(CGPoint(x: 0, y: height + 100.0),
        controlPoint: CGPoint(x: width * 0.5, y: height + 100.0))
    path.addQuadCurveToPoint(CGPoint(x: 0, y: 0),
        controlPoint: CGPoint(x: bendableOffset.horizontal, y: height * 0.5))
    path.closePath()

    shapeLayer.path = path.CGPath
}

编辑:绝对(我非常肯定)不仅仅是摆弄这一种方法。我已经尝试了所有我能想到的东西,我需要一些新眼睛!

提前非常感谢你 - 请帮助!

-Dan

0 个答案:

没有答案