일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 클린 코드
- ios
- uitableview
- tableView
- HIG
- clean architecture
- uiscrollview
- Protocol
- 리팩토링
- 스위프트
- RxCocoa
- swift documentation
- map
- Xcode
- combine
- 애니메이션
- swiftUI
- SWIFT
- collectionview
- rxswift
- UICollectionView
- MVVM
- UITextView
- Observable
- Clean Code
- 리펙토링
- 리펙터링
- Human interface guide
- ribs
- Refactoring
- Today
- Total
목록bottom sheet (2)
김종권의 iOS 앱 개발 알아가기
구현 아이디어 - 뷰의 구조 레이아웃을 쉽게하기 위해서 뷰 2개를 사용 맨 아래에 깔린 뷰 - 터치 이벤트가 아래 뷰에 전달되는 PassThroughView를 사용 그 위에 UIView를 얹는 형태 (= bottomSheetView) BottomSheetView의 constraint left.right.bottom은 superview와 같도록 정의 top은 미리 정의해둔 yPosition만큼 top의 간격만큼 처리 // tip(아래쪽에 붙어있는 모드)과 full로 정하고, 각 yPosition을 계산 enum Mode { case tip case full } private enum Const { static let bottomSheetRatio: (Mode) -> Double = { mode in swi..
UISheetPresentationController iOS 15+ 부터 제공 내부적으로 UIViewController안에 프로퍼티가 존재하므로, UIViewController에서 바로 사용 가능 사용 방법 SheetPresentation에 담길 MyViewController 정의 class MyViewController: UIViewController { lazy var tableView: UITableView = { let view = UITableView() view.register(UITableViewCell.self, forCellReuseIdentifier: "cell") view.delegate = self view.dataSource = self return view }() var data..