我是Swift中的新成员。有关UITableView的示例代码显示新项目位于列表的底部。我们怎么能扭转这种情况?我搜索了互联网,但无法找到答案。Swift UITableView - 如何将新项目放在顶部而不是列表的底部?
谢谢。 居文
我是Swift中的新成员。有关UITableView的示例代码显示新项目位于列表的底部。我们怎么能扭转这种情况?我搜索了互联网,但无法找到答案。Swift UITableView - 如何将新项目放在顶部而不是列表的底部?
谢谢。 居文
UITableviews显示诸如字符数组等
var data = ["B","C","D","E"]
通常基于阵列的顺序上的数据,通过使用附加其中在阵列的末尾添加数据添加数据到阵列,因此为什么它将它添加到列表的底部。
data.append("A")
如果你希望你的表视图在列表的顶部添加数据,然后就可以在这样的数组开头添加数据。
data.insert("A", at: 0)
现在重新加载你的tableView和新的数据将在列表的顶部添加
yourTableViewName.reloadData()
非常感谢,它的工作 –
投票uppp .....! –
为了把新的项目放在上面,在要求的位置(索引0)插入并重新加载相应的indexPath(行:0,部分:0)。
let indexPathOfFirstRow = NSIndexPath.init(forRow: 0, inSection: 0)
tableView.beginUpdates()
yourArray.insert("some element", atIndex: 0)
tableView.insertRowsAtIndexPaths([indexPathOfFirstRow], withRowAnimation: .Automatic)
tableView.endUpdates()
重新加载整个表是一个代价高昂的任务,不建议。
为什么要使用'beginUpdates'和'endUpdates'?简单地使用'inserRowAtIndexPaths'也可以工作吗? – Rikh
这是一个很好的做法! –
将项目添加到数组最后一个索引。 然后重新加载tableView
将项目添加到数组的最后一个索引。然后重新加载tableView –
顶部或底部? @VineeshTP –