【发布时间】:2020-01-30 16:15:57
【问题描述】:
我尝试在UITableView 中为每个部分添加标题标题,但在本例中为UITableViewDiffableDataSource,我不知道应该在哪里做。我的代码的一部分:
private func prepareTableView() {
tableView.delegate = self
tableView.register(UITableViewCell.self, forCellReuseIdentifier: "cell")
dataSource = UITableViewDiffableDataSource<Sections, User>(tableView: tableView, cellProvider: { (tableView, indexPath, user) -> UITableViewCell? in
let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath)
cell.textLabel?.text = user.name
return cell
})
}
private func addElement(_ user: User) {
var snap = NSDiffableDataSourceSnapshot<Sections, User>()
snap.appendSections([.main, .second])
if isFirst {
users.append(user)
} else {
secondUsers.append(user)
}
snap.appendItems(users, toSection: .main)
snap.appendItems(secondUsers, toSection: .second)
isFirst.toggle()
dataSource.apply(snap, animatingDifferences: true, completion: nil)
dataSource.defaultRowAnimation = .fade
}
UICollectionViewDiffableDataSource 有一个参数supplementaryViewProvider,用户可以在其中配置标头。 UITableViewDiffableDataSource中确实存在这样的东西
【问题讨论】:
标签: swift uitableview diffabledatasource nsdiffabledatasourcesnapshot