- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我尝试使用 UITableViewDiffableDataSource
class SecondViewController: UIViewController {
enum Section {
case main
}
struct Model: Hashable {
let title: String
}
var tableView: UITableView!
var dataSource: UITableViewDiffableDataSource<Section, Model>!
override func viewDidLoad() {
super.viewDidLoad()
tableView = UITableView(frame: view.bounds)
view.addSubview(tableView)
tableView.autoresizingMask = [.flexibleWidth, .flexibleHeight]
tableView.register(UITableViewCell.self, forCellReuseIdentifier: "cell")
view.layoutIfNeeded()
dataSource = UITableViewDiffableDataSource<Section, Model>(tableView: tableView, cellProvider: { (tableView, indexPath, item) -> UITableViewCell? in
let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath)
cell.textLabel?.text = item.title
return cell
})
var snapshot = NSDiffableDataSourceSnapshot<Section, Model>()
snapshot.appendSections([.main])
snapshot.appendItems([Model(title: "1")], toSection: .main)
dataSource.apply(snapshot)
}
}
view.layoutIfNeeded()
创建前
dataSource
,它会崩溃:
Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Invalid update: invalid number of sections. The number of sections contained in the table view after the update (1) must be equal to the number of sections contained in the table view before the update (1), plus or minus the number of sections inserted or deleted (1 inserted, 0 deleted).'
最佳答案
我在填充 UITableView
时遇到了同样的问题结果来自 PassthroughSubject
,尽快UIViewController
被显示。
动画更新对我来说非常重要,所以我的解决方法是首先“准备”DiffableDataSource
通过在初始化后立即创建快照,附加我想要的部分,使用空数组附加项目,并使用 animatingDifferences: false
应用快照.
之后,我能够毫无问题地应用带有数据的动画快照。
关于uikit - UITableViewDiffableDataSource 无效部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60789365/
我正在尝试在UITableView中使用新的UITableViewDiffableDataSource设置带有部分的UITableViewController。 除了设置节标题,一切似乎都可以正常工作
我尝试使用 UITableViewDiffableDataSource class SecondViewController: UIViewController { enum Section
(在与下面的@AndreasOetjen 讨论后重写了这个问题。感谢他的评论。) 我在使用 UITableView 时遇到了问题具有可区分的数据源。在我的应用程序中,当用户修改一个项目时,它可能会更改
iOS 13 - 测试版 我正在使用 UITableViewDiffableDataSource,我想将项目从一个部分移动到另一个部分。 我正在将新快照应用到数据源,项目立即移动没有动画过渡。我尝试了
我目前在使用 UITableViewDiffableDataSource 时遇到问题. 我想试试这个新功能,所以我在网上看了很多教程,但似乎没有一个能解决我的问题。 在我当前的 viewControl
我尝试为 UITableView 中的每个部分添加标题标题,但在本例中是 UITableViewDiffableDataSource我不知道我应该在哪里做。我的代码的一部分: private func
我正在对 UITableViewDiffableDataSource 进行一些修改,我能够毫无问题地加载 tableView。我正在尝试在 tableView 中创建节标题,但是我遇到了一些古怪的行为
我正在使用 UITableViewDiffableDataSource 在我的应用程序中实现搜索屏幕.每个单元格代表一个搜索命中并在单元格标题中突出显示搜索匹配,有点像 Xcode 的 Open Qu
我正在尝试采用新的 iOS 13 UITableViewDiffableDataSource 并且遇到了障碍;我无法工作如何实现 func sectionIndexTitles(for tableVi
我正在尝试让我的 tableView cells 可移动,但它需要来自 UITableViewDataSource 协议(protocol)的 2 或 3 个函数,如果我试图在我的 中实现委托(del
iOS 13 有一些新的 API 用于处理 tableView 和 API 的一个有趣区域 是UITableViewDiffableDataSource 的cell 提供程序参数 public typ
我是一名优秀的程序员,十分优秀!