program tip

애니메이션으로 UITableViewCell을 추가 / 삭제 하시겠습니까?

radiobox 2021. 1. 6. 07:59
반응형

애니메이션으로 UITableViewCell을 추가 / 삭제 하시겠습니까?


나는 이것이 멍청한 질문처럼 들릴 수도 있다는 것을 알고 있지만 모든 곳을 살펴 보았습니다. 어떻게 할 수 있습니까?

swype-to-delete 방법으로이 작업을 수행하는 방법을 알고 있지만 해당 기능 밖에서 어떻게 수행합니까?

일부 코드 샘플을 게시하십시오.

감사!
Coulton


[self.tableView beginUpdates];
[self.tableView insertRowsAtIndexPaths:insertIndexPaths withRowAnimation:UITableViewRowAnimationFade];
[self.tableView deleteRowsAtIndexPaths:deleteIndexPaths withRowAnimation:UITableViewRowAnimationFade];
[self.tableView endUpdates];

insertIndexPaths 테이블에 삽입 할 NSIndexPath의 배열입니다.

deleteIndexPaths 테이블에서 삭제할 NSIndexPath의 배열입니다.

인덱스 경로의 배열 형식 예 :

NSArray *insertIndexPaths = [[NSArray alloc] initWithObjects:
        [NSIndexPath indexPathForRow:0 inSection:0],
        [NSIndexPath indexPathForRow:1 inSection:0],
        [NSIndexPath indexPathForRow:2 inSection:0],
        nil];

Swift 2.1 이상

tableView.beginUpdates()
tableView.deleteRowsAtIndexPaths([YourIndexPathYouWantToDeleteFrom], withRowAnimation: .Fade)
tableView.insertRowsAtIndexPaths([YourIndexPathYouWantToInsertTo], withRowAnimation: .Fade)
tableView.endUpdates()

다음과 같이 쉽게 NSIndexPath를 만들 수 있습니다.

NSIndexPath(forRow: 0, inSection: 0)

이러한 두 가지 방법을 원하는 : insertRowsAtIndexPaths:withRowAnimation:그리고 deleteSections:withRowAnimation:그들은 모두에 자세히 설명되어 있습니다 jQuery과 문서 .


스위프트 4.0

    tableView.beginUpdates()
    tableView.deleteRows(at: [YourIndexPathYouWantToDeleteFrom], with: .fade)
    tableView.insertRows(at: [YourIndexPathYouWantToInsertTo], with: .fade)
    tableView.endUpdates()

IndexPath를 만들려면 다음을 사용하십시오.

IndexPath(row: 0, section: 0)

참조 URL : https://stackoverflow.com/questions/5560602/add-delete-uitableviewcell-with-animation

반응형