Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- Observable
- Xcode
- combine
- map
- 클린 코드
- 리팩토링
- Human interface guide
- UITextView
- 애니메이션
- MVVM
- HIG
- clean architecture
- RxCocoa
- uitableview
- Clean Code
- UICollectionView
- collectionview
- tableView
- rxswift
- Refactoring
- 리펙터링
- swift documentation
- swiftUI
- 리펙토링
- uiscrollview
- ribs
- 스위프트
- ios
- SWIFT
- Protocol
Archives
- Today
- Total
김종권의 iOS 앱 개발 알아가기
[iOS - swift] long touch 시 개발자모드 불러오기 본문
debug를 위해서 아무 화면 long touch시 개발자 모드 로드 원리
- AppDelegate에서 window객체에 longTouchRecogniger 등록하여 구현
- 설명에 편의를 위해 SceneDelegate삭제
구현 방법
- application(:didFinishLaunchingWithOptions:)에서 longPressed등록
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
registerLongPressed()
return true
}
private func registerLongPressed() {
// TODO
}
}
- 구현: window에 addGestureRecogniger()를 사용
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
registerLongPressed()
return true
}
private func registerLongPressed() {
#if DEBUG
let longPressed = UILongPressGestureRecognizer(target: self, action: #selector(showVC))
longPressed.minimumPressDuration = 1.0
window?.addGestureRecognizer(longPressed)
#endif
}
@objc private func showVC(gesture: UILongPressGestureRecognizer) {
if gesture.state == .began {
let vc = LongPressedVC(nibName: "LongPressedVC", bundle: nil)
vc.modalPresentationStyle = .overCurrentContext
window?.rootViewController?.present(vc, animated: true, completion: nil)
}
}
}
'iOS 응용 (swift)' 카테고리의 다른 글
[iOS - swift] custom view (xib) 내부 내용에 따라 동적으로 크기 조절 (0) | 2021.03.25 |
---|---|
[iOS - swift] 빈 화면 탭 시 키보드 내리는 방법 (화면 터치 시 키보드 숨김처리) (0) | 2021.03.22 |
[iOS - swift] 로컬 푸시 (local notification) (5) | 2021.03.21 |
[iOS - swift] os_log, Logger, 통합 로깅 시스템 (unified logging system) (0) | 2021.03.21 |
[iOS - swift] Web crawling(웹 크롤링), web scraping, (swiftsoup, Alamofire, 한글 깨짐) (0) | 2021.03.17 |
Comments