Swift - Tinder effect

前端 未结 4 1822
醉酒成梦
醉酒成梦 2020-12-29 00:02

How can I achieve Tinder effect in Swift?

I mean, I have an image and want to accept if I swipe to right and reject if I swipe to left.

I can do it with the

4条回答
  •  梦毁少年i
    2020-12-29 00:35

    Check this out Swift 4 library!!

    let panGestureRecognizer = UIPanGestureRecognizer(target: self, action: #selector(self.beingDragged)) addGestureRecognizer(panGestureRecognizer)

    func beingDragged(_ gestureRecognizer: UIPanGestureRecognizer) {

        xFromCenter = gestureRecognizer.translation(in: self).x
        yFromCenter = gestureRecognizer.translation(in: self).y
        switch gestureRecognizer.state {
        //%%% just started swiping
        case .began:
            originalPoint = self.center;
            break;
    
        //%%% in the middle of a swipe
        case .changed:
            let rotationStrength = min(xFromCenter / ROTATION_STRENGTH, ROTATION_MAX)
            let rotationAngel = .pi/8 * rotationStrength
            let scale = max(1 - fabs(rotationStrength) / SCALE_STRENGTH, SCALE_MAX)
            center = CGPoint(x: originalPoint.x + xFromCenter, y: originalPoint.y + yFromCenter)
            let transforms = CGAffineTransform(rotationAngle: rotationAngel)
            let scaleTransform: CGAffineTransform = transforms.scaledBy(x: scale, y: scale)
            self.transform = scaleTransform
            updateOverlay(xFromCenter)
            break;
    
        case .ended:
            afterSwipeAction()
            break;
    
        case .possible:break
        case .cancelled:break
        case .failed:break
        }
    }
    

    Hope this will work . Let me know

    https://github.com/nickypatson/TinderSwipeView

    thanks

提交回复
热议问题