관리 메뉴

이리메라 갖다가

[Swift] 메모 앱 만들기 심화 (8) : TableView 살펴보기 본문

TIL

[Swift] 메모 앱 만들기 심화 (8) : TableView 살펴보기

너이르나 2023. 9. 1. 19:56
728x90
반응형
beginUpdates(), endUpdates()

- UITableView를 업데이트할 때 사용되는 메서드

- 테이블 뷰의 데이터 소스를 변경할 때 테이블 뷰의 셀들을 새로고침하고 애니메이션 효과를 부여하는데 사용됨

- 이들 메서드를 사용하는 주된 이유는 테이블 뷰의 업데이트를 보다 효율적으로 처리하기 위함

 

사용 장점

  • 애니메이션 및 레이아웃 최적화: 테이블 뷰의 셀들이 추가되거나 삭제될 때, 애니메이션 효과와 함께 레이아웃이 변경되는 경우가 있는데 beginUpdates()와 endUpdates()를 사용하면 셀들의 추가 및 삭제에 대한 애니메이션 효과가 부드럽게 적용할 수 있으며, 테이블 뷰의 레이아웃 최적화가 이루어진다.
  • 데이터 일관성 유지: beginUpdates()와 endUpdates()를 사용하면 테이블 뷰의 데이터 소스를 변경하는 과정에서 테이블 뷰와 데이터 소스 간의 일관성이 유지되며, 이를 통해 예상치 못한 동작이나 오류를 방지할 수 있다.
  • 동시 업데이트 처리: 여러 셀을 동시에 추가하거나 삭제하는 경우에도 beginUpdates()와 endUpdates()를 사용하면 테이블 뷰가 한 번에 하나씩 셀을 업데이트하지 않고, 모든 변경 사항을 한 번에 처리할 수 있어 성능이 향상된다.
  • 배치 업데이트 지원: 테이블 뷰의 insertRows, deleteRows, insertSections, deleteSections 등의 메서드를 사용하여 여러 셀이나 섹션을 한 번에 추가하거나 삭제할 수 있다. 이러한 배치 업데이트 작업을 beginUpdates()와 endUpdates() 내에서 수행하면 애니메이션 효과와 함께 셀들이 한 번에 업데이트되며, 사용자에게 보다 나은 사용자 경험을 제공할 수 있다.

 

화면 비교

 

딱히 별 차이는 없어보인다....;;

눈으로 확인하는 차이는 없을지라도 데이터와 관련된 차이가 있다고하니 쓰는걸로^_^

 

 

728x90
반응형