[iOS] Event & Gesture handling : PTS (Pinch-Touch&Tap-Sketch/Swipe) Pinch Example 4

2022. 9. 1. 14:55iOS/Learning

지난 포스팅에 이어서 Pinch View를 구현한다.

 

 

Set the Swipe View Layout 

1. Library[➕]버튼을 클릭하여 Lable 가져오기

 

2.Lable 선택하고 하단의 Add New Constraints을 눌러 좌우 여백을 16, 상하 여백을 0으로 설정하여 화면을 꽉 채운다

 

 

3. Outlet Variable 추가

Editor 영역 상단 우측 Adjust Editor Options 버튼 > Assistant 클릭 

Pinch Label: Assisttant 코드 영역으로 Drag & Drop

 

 

 

 

 

Implement Pinch Gesture

import UIKit

class PinchViewController: UIViewController {
    @IBOutlet var pinchText: UILabel!
    
    var initialFontSize: CGFloat!
    
    override func viewDidLoad() {
        super.viewDidLoad()

        // Do any additional setup after loading the view.
        
        let pinch = UIPinchGestureRecognizer(target: self, action: #selector(PinchViewController.doPinch(_:)))
        self.view.addGestureRecognizer(pinch)
    }
    
    @objc func doPinch(_ pinch: UIPinchGestureRecognizer) {
        if pinch.state == UIGestureRecognizer.State.began {
            initialFontSize = pinchText.font.pointSize
        } else {
            pinchText.font = pinchText.font.withSize(initialFontSize * pinch.scale)
        }
    }

}

 

 

 

Result)

 

 


Reference

Do it! 스위프트로 아이폰 앱 만들기 입문 개정 4판, 이지스 퍼블리싱, 송호정, 이범근