Programing Language/iOS(Swift)

iOS) UIView에 터치 이벤트를 추가하는 방법?

Jude_Song 2019. 11. 1. 15:59
728x90
반응형

몸짓 인식기 

제스처 인식기 를보기에 추가 할 때 알림을받을 수있는 일반적으로 사용되는 터치 이벤트 (또는 제스처)가 많이 있습니다. 제스처 유형을 따르는 사람들은 기본적으로 지원됩니다. 

  • UITapGestureRecognizer  (화면을 한 번 이상 짧게 터치) 
  • UILongPressGestureRecognizer 장시간 터치 (장시간 동안 화면 터치 ) 
  • UIPanGestureRecognizer  (손가락을 화면 위로 움직여) 
  • UISwipeGestureRecognizer 스 와이프 (빠르게 움직이는 손가락) 
  • UIPinchGestureRecognizer Pinch (손가락 두 개를 함께 움직이거나 따로 움직입니다 - 일반적으로 확대 / 축소) 
  • UIRotationGestureRecognizer 회전 (두 손가락을 원형 방향으로 이동) 

이 외에도 사용자 정의 제스처 인식기를 만들 수도 있습니다.

 

인터페이스 빌더에 제스처 추가하기 

제스처 인식기를 객체 라이브러리에서보기로 드래그하십시오. 

Outlet 및 Action을 만들기 위해 Document Outline의 제스처에서 View Controller 코드로 드래그 앤 드롭을 제어하십시오. 

이 속성은 기본적으로 설정되어야하지만 사용자 동작 사용 이보기에서 true로 설정되어 있는지도 확인해야합니다. 

프로그래밍 방식으로 제스처 추가 

프로그래밍 방식으로 제스처를 추가하려면 (1) 제스처 인식기를 만들고, (2) 뷰에 추가하고, (3) 제스처를 인식 할 때 호출되는 메서드를 만듭니다.

 

import UIKit
class ViewController: UIViewController {

    @IBOutlet weak var myView: UIView!

    override func viewDidLoad() {
        super.viewDidLoad()

        // 1. create a gesture recognizer (tap gesture)
        let tapGesture = UITapGestureRecognizer(target: self, action: #selector(handleTap(sender:)))

        // 2. add the gesture recognizer to a view
        myView.addGestureRecognizer(tapGesture)
    }

    // 3. this method is called when a tap is recognized
    @objc func handleTap(sender: UITapGestureRecognizer) {
        print("tap")
    }
}

애플은 사랑이죠~ 

728x90
반응형