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 |
Tags
- Refactoring
- Human interface guide
- MVVM
- rxswift
- RxCocoa
- Protocol
- collectionview
- 애니메이션
- 클린 코드
- Clean Code
- Xcode
- Observable
- swiftUI
- 리펙토링
- map
- ribs
- SWIFT
- UICollectionView
- UITextView
- swift documentation
- ios
- 스위프트
- uiscrollview
- uitableview
- clean architecture
- 리팩토링
- combine
- tableView
- HIG
- 리펙터링
Archives
- Today
- Total
김종권의 iOS 앱 개발 알아가기
[iOS - swift] popToRootViewController의 completion 인자를 가진 커스텀 함수 만드는 방법 (CATransaction 사용) 본문
iOS 응용 (swift)
[iOS - swift] popToRootViewController의 completion 인자를 가진 커스텀 함수 만드는 방법 (CATransaction 사용)
jake-kim 2021. 1. 12. 22:10CATransaction이란?
- Core Animation의 한 종류
- implicit transaction과 explicit transaction (run loop개념과 동일)에서 explicit transaction을 할 때 CATransaction을 run loop에 CATransaction.commit()코드 이후에 보내게 됨
- CATransaction.commit()코드 전에 CATransaction 속성을 지정해주면 전환 관련 애니메이션이 지정해준대로 명시적(explicit)으로 실행
사용 방법
- UINavigationController를 extension하여 사용
extension UINavigationController {
func popToRoot(completion: @escaping () -> Void) {
CATransaction.begin()
CATransaction.setCompletionBlock(completion)
navigationController?.popToRootViewController(animated: true)
CATransaction.commit()
}
}
'iOS 응용 (swift)' 카테고리의 다른 글
[iOS - swift] Fake GPS, 가상 위치 설정 (iTools) (0) | 2021.01.15 |
---|---|
[iOS - swift] throttle tap 커스텀 (0) | 2021.01.14 |
[iOS - swift] Localization, Localizable, 지역화 테스트 방법 (Programmtically, Storyboard, xib) (1) | 2021.01.11 |
[iOS - swift] Floating Button (Hover 프레임워크) (0) | 2021.01.11 |
[iOS - swift] 포커스 애니메이션 (0) | 2021.01.10 |
Comments