iOS 에서 다음과 같이 커스터마이징 된 셀이 테이블 뷰에 붙어있고


삭제까지 할 수 있게 되었다



그런데 문제는 그 다음이었다


5개의 셀중에서 두번째 셀을 없애기로 계획하고,


두번째 셀을 없앴다







다음과 같이 4개의 셀만 남아있는 환경이 되었는데


3번째 셀을 시작버튼을 눌러서 실행시켜보면, 


4번째 셀이 작동하는 것을 확인 할 수 있었다


해결해야 할 버그다





다음 코드로 간단히 해결 할 수 있었다




=========================================================================


// 단위 셀을 밀어서 삭제하기 위해서, 생성한 함수 - 테이블 뷰에서 삭제 버튼을 클릭하면 호출

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath

{

    // 리스트에서 삭제

    

    [pListView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];

    

    [pListView reloadData];

    

=========================================================================



[pListView reloadData];


다음 코드 추가로 화면에서 삭제됨과 동시에, 


테이블 뷰에 그려지는 셀이 다시 한번 그려지는 액션이 일어났다


UITableView 의 reloadData 메서드를 한번 살펴보자



- (void)reloadData;                 // reloads everything from scratch. redisplays visible rows. because we only keep info about visible rows, this is cheap. will adjust offset if table shrinks


모든 행들을 다시 디스플레이 시켜준다


Posted by 스타켄지니어
,