반응형
AOS로 클릭 이벤트를 구현할땐 상황에 맞게 View, TextView등 다양한 오브젝트를 활용해서 레이아웃을 그리고 거기에 간단하게 클릭이벤트를 붙입니다.
하지만 iOS는 버튼에만 IBAction을 사용해서 편리하게 붙일 수 있고 그 외엔 'TapGesture'를 붙여야 합니다.
class ViewController: UIViewController {
@IBOutlet weak var view: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
// 포인트 구매
let buyPoint = UITapGestureRecognizer(target: self, action: #selector(clickPoint))
view.addGestureRecognizer(buyPoint)
}
@objc func clickPoint(sender: UITapGestureRecognizer){
print("clickPoint")
}
}
UIView에도 동일하게 클릭 이벤트를 붙였는데 작동하지 않았습니다.
그래서 검색을 해보니 'isUserInteractionEnabled = true' 를 설정 해줘야 한다고 하더라구요
// 포인트 구매
let buyPoint = UITapGestureRecognizer(target: self, action: #selector(clickPoint))
lbPoint1.isUserInteractionEnabled = true
view.addGestureRecognizer(buyPoint)
위 처럼 작성하니 정상 작동했습니다.
꾸준히 못하고 오랜만에 다시 하려니 또 새롭네요. 단축키도 다시 찾아보구..
두개 플랫폼을 옮겨다니면서 하시는 분들 리스펙합니다.
반응형
'아이폰 > 안드 개발자 시점' 카테고리의 다른 글
[iOS] Tableview 만들기 ( Custom Tableview Cell ) (0) | 2022.03.07 |
---|---|
[iOS] CollectionView 선택한 아이템 UI 변경하기 (0) | 2021.08.26 |
[iOS] Autolayout, Android 에서 View가 Gone되는 효과 구현하기 (0) | 2021.08.10 |
[iOS] CollectionView로 구현하는 페이징 & 리스트 (2) | 2021.07.16 |