tableview单元格的快速逆序

时间:2015-11-25 19:54:13

标签: swift tableview

我的tableview是从字典加载的,我试图反转显示tableview的顺序,字典设置如下

loadComments["set\(num)"] = ["\(usernameC)","\(timestamp)","\(commenttxt.text)"]

当然会有很多套

并且tableview将像这样加载

在cellforRow函数中

   if let setInfo = loadComments["set\(indexPath.row)"] {// set data in cell }

这个工作正常,但我希望结果反转,所以输入的最后一个注释位于tableview的顶部而不是加载到底部?

欢迎任何想法

1 个答案:

答案 0 :(得分:1)

为了实现这一目标,您需要对数据源进行排序(在本例中为您的字典)。默认情况下,字典不是有序数据结构,因此您需要从中创建有序数据结构(例如数组)。例如,如果你想按字典键排序,那么你可以在Swift中做这样的事情:

let dataSource = ["aaaaaa" : "Some data here", "bbbbbb" : "Some data here", "cccccc" : "Some data here"]
let sortedData = dataSource.sort{ $0.0 < $1.0 }

这将为您提供一系列元组,这些元组可能对您没有用处。如果您想按键排序然后只存储与之关联的数据,您可以添加地图函数,如下所示:

let dataSource = ["aaaaaa" : "Some data here", "bbbbbb" : "Some data here", "cccccc" : "Some data here"]
let sortedData = dataSource.sort{ $0.0 < $1.0 }.map { $0.1 }

排序后,请记住刷新表格视图。您可以通过刷新单元格,部分或整个事物来完成此操作。最简单的方法是这样的:

tableView.reloadData()

希望这可以帮助你:)