tableView 4

[UIKit] reloadSections에서 애니메이션 없애는 방법

reloadSections에서 애니메이션 없애는 방법 UITableView 혹은 UICollectionView를 사용할 때 reloadData()가 아니라 특정 섹션만 업데이트하는 reloadSections()를 사용할 수 있음. 특정 섹션만 업데이트 하는 것은 이점도 존재하나, 애니메이션이 들어가게 되어서 원하는 UX 결과물이 아니거나, 방송 실시간 채팅처럼 매우 빠른 속도로 데이터가 들어와 UI를 업데이트가 진행되는 경우 UI가 블락되거나, 심지어는 크래시가 발생하기도 함. Task { @MainActor [weak self] in guard let self else { return } UIView.performWithoutAnimation { self.reloadSections(in..

[SwiftUI] List Row 선택하기(TableView didSelectRow)

List Row 선택하기(TableView didSelectRow) ✅ 오랜만이다! 제목이 참 UIKit스러움 제목을 이렇게 작성하게 된 이유로는 내가 1년 정도 UIKit을 사용하면서 이미 사고가 여기에 익숙해진 상태인데, SwiftUI로 List의 Row(UIKit에서 cell)을 선택하는 로직을 작성하는게 잘 아직까지는 어려운 느낌.그래서 내가 구글에 저 키워드로 검색했는데, 딱히 맘에 드는게 안나타나서 직접 정리하려고 포스팅 함. 생각보다 간단한데, 이게 참 어려웠음.우선 UIKit을 사용하다보니 tableView에서는 UITableViewDelegate를 상속받아서 didSelectRow를 구현하면 되었다.그러니까 이와 비슷하게 List의 Row에 onTapGesture를 사용하면 될거라고 생각..

[SwiftUI] List (tableView in UIKit)

List (tableView in UIKit) ✅ SwiftUI의 List에 대해서 알아보자. List를 구성하는건 크게 어렵지 않다. ✅ MyList import SwiftUI struct MyList: View { // 다른쪽에서 데이터를 받아올 것이기 때문에 @Binding var isNavigationBarHidden: Bool // 바인딩의 경우에는 생성자 필수! init(isNavigationBarHidden: Binding = .constant(false)) { if #available(iOS 14.0, *){ } else { // 아래 버전에서는 푸터가 있어서 이 코드를 통해서 없애야 한다. UITableView.appearance().tableFooterView = UIView() } U..

iOS SnapKit 05 | iOS tableView를 코드로 구성하는 법 03

✅ 이번 시간에는 RxSwift를 적용하여 코드를 조금 더 수정해보자 코드로 테이블 뷰를 구성하는게 처음이다보니 계속 늘어지는 기분이지만 꾸준히 나아가보자! // // ViewController05.swift // SnapKit_practice // // Created by Hamlit Jason on 2021/08/19. // import UIKit import SnapKit import RxSwift import RxCocoa class ViewController05Cell : UITableViewCell { static let identifier = "ViewController05Cell" let img : UIImageView = { // 이미지 생성 let imgView = UIImageView..