iOS 捏合缩放从上一个比例开始

标签 ios swift pinchzoom

我想要进行捏合/缩放,使缩放从当前比例开始。我尝试过以下代码:

@objc func pinchedView(recognizer:UIPinchGestureRecognizer) {

    if (recognizer.state == .ended)  {
        lastScale = 1.0
        return
    }

    let scale = 1.0 - (lastScale - recognizer.scale)
    let zoomInAction = SKAction.scale(to: cameraNode.yScale + scale, duration: 0.25)
    lastScale = recognizer.scale
    cameraNode.run(zoomInAction)
}

问题是,无论我用哪种方式捏,它都会变得越来越小。我该如何纠正这个问题?

最佳答案

我认为您可能希望在手势开始时将 lastScale 初始化为 1.0。

看看accepted answer对于这个问题。

关于iOS 捏合缩放从上一个比例开始,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53963768/

相关文章:

ios - 无法在 iOS 11 模拟器上获取群组文件夹

java - 覆盖 swipetorrefresh 上的缩放 - Android

ios - 如何在 SWIFT 中设置捏合手势识别器的最小值和最大值?

ios - 如何让图像在 iOS 的分页 ScrollView 中缩放?

ios - 超正方体 OCR "WARNING: Image has not size!"

ios - 您如何正确使用 NSStreams(无阻塞、读到数据末尾和消息重试)?

ios - 组合框架更新 UI 无法正常工作

ios - Firebase google登录身份验证AppDelegate-使用未解析的标识符 'isMFAEnabled'

iphone - CAShapeLayer 上的 CAGradientLayer SetMask 使应用程序崩溃

IOS7,8,9 接收之前的推送通知行为