iOS/UIKit

[iOS] TableView의 prefetching 기능

유훈 | Yuhun 2022. 2. 22. 03:07
반응형

간단한 기능이지만 tableView에서 유용하게 사용할 수도 있는 기능을 알게되어 정리합니다.

 

일단 이 method는 화면에서 tableView의 cell이 보여지려고 할때 미리 작동되는 함수라고 생각하면 될 것 같습니다.

그래서 스크롤을 할때 다음 cell이 보여지기 전에 어떠한 이벤트를 처리하고 싶다라고 생각할때 유용하게 사용이 가능할듯 합니다.

 

사용 방법은 간단합니다.

1. UITableViewDataSourcePrefetching를 extension 합니다.

2. tableView.prefetchDataSource = self 를 viewDidLoad에 작성해줍니다.

3. prefetchRowsAt 메서드를 사용합니다.

 

func tableView(_ tableView: UITableView, prefetchRowsAt indexPaths: [IndexPath]) {
   
   // indexPaths는 보여질 section과 row의 값을 [[section,row]] 형식으로 가지고 있습니다.
   // 즉, 이차원 배열 형식으로 값을 가지고 있습니다.
   
   //원하는 동작 작성
}

 

참고로 중간 cell에서는 앞뒤로 예상되는 값을 출력합니다. 

배열의 원소의 수가 책정되는 방식은 아직 잘 모르겠습니다.

반응형