일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 클린 코드
- 리펙토링
- clean architecture
- swift documentation
- ribs
- SWIFT
- 스위프트
- 리팩토링
- UITextView
- Human interface guide
- MVVM
- Clean Code
- Observable
- map
- RxCocoa
- HIG
- swiftUI
- ios
- Refactoring
- tableView
- 리펙터링
- rxswift
- Protocol
- uitableview
- 애니메이션
- uiscrollview
- UICollectionView
- collectionview
- combine
- Xcode
- Today
- Total
목록Scroll (4)
김종권의 iOS 앱 개발 알아가기
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bDBFHy/btsLKoVgw7T/Bq6qkCVQrKRDIvnqGBe6WK/img.gif)
gesture 동작 개념gesture는 거의다 아는 것이지만, 특성이 존재gesture가 즉각 이벤트가 감지되지 않고 일정 시간 0.3초 정도의 딜레이를 두고 그동안 입력된 이벤트를 총괄하여 어떤 제스처인지 파악만약 2번 탭 제스쳐와, 1번 탭 제스쳐가 같이 등록되어 있다면 ex) 2번 탭 제스쳐와, 1번 탭 제스쳐가 같이 등록된 케이스gesture는 일정 딜레이를 두고 감지되므로, 2번 탭했을 때 첫번째 탭에 바로 1중 탭 제스쳐가 감지되지 않고 2중 탭 제스쳐가 감지됨빠르게 2번 탭하면 2중 탭 이벤트만 감지되고, 1번만 탭하면 1중 탭 이벤트만 감지.gesture(TapGesture(count: 2).onEnded { message = "Tap twice!" boxColor = .oran..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/Wsl9B/btrSas49WmR/4OJZFI4nb5Y65LX9Afi3Kk/img.gif)
구현 아이디어 상단에는 UIImageView, 하단에는 스크롤되는 UITableView나 UICollectionView 준비 (예제에서는 UICollectionView 사용) UIImageView와 UICollectionView 레이아웃 UICollectionView의 topAnchor를 화면의 최상단으로 제약 UICollectionView의 top contentInset값을 UIImageView의 크기만큼 설정 - UIImageView가 마치 collectionView의 하나의 셀처럼 보이도록 하기 위함 상단의 UIImageView도 마치 스크롤 되는 동작처럼 보여야하므로, scrollViewDidScroll(_:) 델리게이트에서, scrollView.contentOffset.y값을 이용하여 UIIma..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/c9dRH0/btrimIomcJV/pRTi8lxxoT3OC94JbyzpkK/img.gif)
UITableView에서 스크롤 이동 tableView.scrollToRow(at:at:animated:) 메서드 사용 UI적인 접근이 필요하므로 main 스레드에서 접근 @IBAction func didTapButton(_ sender: Any) { DispatchQueue.main.async { [weak self] in self?.tableView.scrollToRow(at: IndexPath(row: 77, section: 0), at: .bottom, animated: true) } } CollectionView에서 스크롤 이동 collectionView.scrollToItem(at:at:animated:) 메서드 이용 main 스레드로 접근 @objc func didTapMoveScrollB..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/s6Zaw/btqK7084bY2/yZByLNZlMbs5CwfLuFwkKK/img.gif)
sc특정 textField를 탭한 경우, 특정 위치로 scroll시키는 로직 ScrollView만들기 여기 참고 방향 정의 public enum ScrollDirection { case top case center case bottom } extension으로 scroll이동 구현 public extension UIScrollView { func scroll(to direction: ScrollDirection) { DispatchQueue.main.async { switch direction { case .top: self.scrollToTop() case .center: self.scrollToCenter() case .bottom: self.scrollToBottom() } } } private f..