小编Tka*_*kas的帖子

如何制作从表格视图中删除单元格的动画(rxswift)?

当用户滑动单元格时,可以将其删除。但是,删除时没有动画。

我的 ViewController 中的部分代码:

override func viewDidLoad() {
        super.viewDidLoad()

        guard let foodCategoryDetailViewModel = foodCategoryDetailViewModel else { return }

        tableView.delegate = nil
        tableView.dataSource = nil

        foodCategoryDetailViewModel.foodsInSelectedCategory
            .bind(to: tableView.rx.items(cellIdentifier: FoodCategoryDetailTableViewCell.cellIdentifier, cellType: FoodCategoryDetailTableViewCell.self))
            { row, food, cell in
                cell.foodCategoryDetailCellViewModel = foodCategoryDetailViewModel.cellViewModel(forRow: row)
            }.disposed(by: disposeBag)

        tableView.rx.itemDeleted.subscribe(onNext: { indexPath in
            foodCategoryDetailViewModel.removeFoodFromApplication(atRow: indexPath.row)
        }).disposed(by: disposeBag)
    }
Run Code Online (Sandbox Code Playgroud)

我的 ViewModel 中的部分代码:

class FoodCategoryDetailTableViewViewModel: FoodCategoryDetailTableViewViewModelType {
    var foodsInSelectedCategory: BehaviorRelay<[Food]>

    func removeFoodFromApplication(atRow row: Int) {
        if let food = getFood(atRow: row) {
            foodsInSelectedCategory.remove(at: row)
            //remove from core data   
          CoreDataHelper.sharedInstance.removeFoodFromApplication(foodName: food.name!) …
Run Code Online (Sandbox Code Playgroud)

uitableview ios swift rx-swift

5
推荐指数
1
解决办法
1888
查看次数

标签 统计

ios ×1

rx-swift ×1

swift ×1

uitableview ×1