안녕하세요 :)
iOS 개발자 리치(rich_iosdev)입니다.
공유해드릴 내용은 Gesture Recognizer 입니다.
Gesture Recognizer
여러 제스처 관련된 이벤트를 인식할 수 있으며, 제스쳐 이벤트가 일어날 때 설정해둔 타겟에 메세지를 보내서 액션 함수가 호출되도록 합니다
UIGestureRecognizer의 하위 클래스
- UITapGestureRecognizer : 싱글탭 또는 멀티탭 제스처
- UIPinchGestureRecognizer : 핀치(Pinch) 제스처
- UIRotationGestureRecognizer : 회전 제스처
- UISwipeGestureRecognizer : 스와이프(swipe) 제스처
- UIPanGestureRecognizer : 드래그(drag) 제스처
- UIScreenEdgePanGestureRecognizer : 화면 가장자리 드래그 제스처
- UILongPressGestureRecognizer : 롱프레스(long-press) 제스처
제스쳐 동작은 위와 같이 여러가지가 존재하고 해당 동작에 의해서 이벤트를 받게되면 액션을 수행하게 됩니다.
Gesture Recognizer 샘플코드
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
let tapRecognizer = UITapGestureRecognizer(target: self, action: #selector(tapView))
view.addGestureRecognizer(tapRecognizer)
}
@objc func tapView(gestureRecognizer: UIGestureRecognizer) {
print("View Tapped")
}
}
UITapGestureRecognizer 클래스를 이용하여 만든 샘플 코드입니다.
1. UITapGestureRecognizer 인스턴스를 정의합니다 (target 과 action)
2. ViewController의 View에 해당 인스턴스를 Gesture Recognizer로 add 시킵니다.
3. 호출될 action 함수에 호출시 수행될 코드를 구현합니다. (print("View Tapped"))
이전에 공유해드렸던 Target-Action 포스팅에서 버튼 이벤트를 예로 들어서 샘플 코드를 구현해보았는데요 거의 동일한 형태라고 보시면 될 것 같습니다. >> https://tryyourbest5.tistory.com/323
포스팅 내용 중 잘못된 내용이 있다면 댓글을 달아주세요!
확인해서 수정하도록 하겠습니다!
끝까지 읽어주셔서 감사합니다 :)
References
[부스트코스] iOS 프로그래밍
Gesture Recognizer?
'Codes Travel > iOS Boost Course #2019' 카테고리의 다른 글
UITableViewCell (테이블 뷰 셀)? (0) | 2019.08.01 |
---|---|
UITableView ( 테이블 뷰 )? (0) | 2019.07.31 |
Target-Action 디자인 패턴 (0) | 2019.07.24 |
Singleton (싱글턴) 이란? (0) | 2019.07.24 |
Delegation? (0) | 2019.07.23 |