2012-03-18 3 views
4

UITableViewCell을 끄는 동안 대리자 메서드 - (NSIndexPath *)tableView:(UITableView *)tableView targetIndexPathForMoveFromRowAtIndexPath:(NSIndexPath *)sourceIndexPath toProposedIndexPath:(NSIndexPath *)proposedDestinationIndexPath이 호출됩니다. 이 대리자 메서드 내에서 proposedDestinationIndexPath에 따라 선택한 셀의 속성을 설정할 수 있습니다.재주문 중 UITableViewCell을 업데이트하는 방법

제 질문은 이제 이동하는 동안 셀 내용을 업데이트하는 방법입니다. 이동 핸들을 해제 한 후 셀을 업데이트 할 수 있지만 위치 (proposedDestinationIndexPath)에 따라 &까지 이동하면서 업데이트 된 값을 표시해야합니다.

누구에게 어떻게 달성 할 수있는 아이디어가 있습니까?

+0

감사합니다. @Flex_ 추가됨. 내 첫 번째 게시물 여기 Stackoverflow ... 향후 게시물 서식을 돌볼 것입니다. –

+0

문제 없습니다. 천만에요. –

답변

3

tableView:targetIndexPathForMoveFromRowAtIndexPath:toProposedIndexPath:에서 셀의 내용을 변경할 수 있습니다.

그러나 실제로 새 indexPath로 셀을 이동하려고 시도하지 않으면이 메서드는 호출되지 않습니다. 따라서 셀을 위아래로 움직이면 텍스트를 변경할 수 없습니다. 하지만 어쨌든 그렇게해서는 안된다.

+1

빠른 답변 주셔서 감사합니다. 달성하고자하는 것은 중첩 수준에 따라 들여 쓰기가있는 계층 적 목록입니다. 따라서 셀을 이동하면 들여 쓰기를 업데이트 할뿐만 아니라 선택된 셀 (이동 중에 실시간으로)에서 아이콘 (셀이 자식이있는 노드 또는 자식이없는 자식 인 경우 상징)을 업데이트해야합니다. 이 작업을 수행하는 "개요"라는 응용 프로그램이 있습니다 ... 그래서 어떻게 든 가능해야합니다. –

+0

픽셀 위치에 따라 업데이트 할 필요는 없지만 proposedDestinationIndexPath에 따라 다릅니다. 따라서 위의 메서드 'tableView : targetIndexPathForMoveFromRowAtIndexPath : toProposedIndexPath :'를 사용하여 셀의 속성을 설정합니다. 셀은 여전히 ​​움직이는 동안 업데이트 된 속성을 반영하지 않습니다. 나는 'setNeedsDisplay'를 시도했지만 어느 것도 업데이트하지 않는다. –

+0

targetIndexPathForMoveFromRowAtIndexPath에 대한 코드를 표시 할 수 있습니다. 방금 Matthias의 솔루션을 시도하고 다른 proposedDestinationIndexPath로 이동하면서 셀 내용을 수정할 수있었습니다. –

관련 문제