일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- RxCocoa
- swift documentation
- ribs
- uitableview
- Human interface guide
- SWIFT
- Xcode
- MVVM
- Protocol
- uiscrollview
- 스위프트
- 애니메이션
- map
- rxswift
- Clean Code
- collectionview
- 리팩토링
- Refactoring
- Observable
- tableView
- UITextView
- clean architecture
- UICollectionView
- HIG
- combine
- 리펙터링
- 리펙토링
- 클린 코드
- ios
- swiftUI
- Today
- Total
목록bottom sheet (2)
김종권의 iOS 앱 개발 알아가기
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dcXTTm/btrFXY1GL6F/1VpIxBp7joAQVKZkkJcQq1/img.gif)
구현 아이디어 - 뷰의 구조 레이아웃을 쉽게하기 위해서 뷰 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..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/YRp3F/btriq64d2ah/Mk4wrFBVtBgy2eVqjAy720/img.gif)
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..