【发布时间】:2018-04-02 02:02:12
【问题描述】:
我有一个带有 1 个部分的 UITableview,并且在该 tableview 的标题中有一个段控件。在我更改表格视图标题中的段后,我希望表格视图向左移动,另一个表格视图与从右侧进入的段控件的选定索引中的信息相关的新数据。这应该是动画。我已经尝试了这 4 件事,但它们都有自己的问题。最大的两个问题是我不想为节标题设置动画,并且数据集不同。部分标题应始终保持不变,因此 reloadSections 不起作用。 reloadRows 有我正在寻找的完美动画,但它不起作用,因为两组数据的行数不同。所以它在使用时会崩溃。
解决方案需要在表中没有数据的情况下工作,并且在获取数据后第一次重新加载。或者它重新加载到表中没有行并显示一个空状态屏幕。
//1
UIView.animate(withDuration0.7, delay: 0.0, options: .curveEaseOut, animations: {
self.mainTableView.reloadData()
}, completion: {})
//2
self.mainTableView.reloadSections(IndexSet(integer: 0), with: .right)
//3
self.mainTableView.reloadRows(at: [indexpaths], with: .right)
//4
self.mainTableView.beginUpdates()
self.mainTableView.insertRows(at: [indexpaths], with: .right)
self.mainTableView.deleteRows(at: [indexpaths], with: .right)
self.mainTableView.endUpdates()
【问题讨论】:
标签: ios swift uitableview