首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >最好的方式来显示迅捷分析的数据?

最好的方式来显示迅捷分析的数据?
EN

Stack Overflow用户
提问于 2015-06-28 08:05:25
回答 1查看 339关注 0票数 0

在已经通过迅捷技术解析了我的数据之后,我希望在uitableview中显示已解析的信息。假设我有一个从json文件中解析出来的名称列表。我希望这些名称显示在各自的单元格中,以允许用户查看所有这些名称。

我还假设,如果他们在解析后选择了正在显示字符串的选定单元格,我实际上可以将这些单元格存储到核心数据对象中,将它们作为可返回的字符串存储?问题是,我在我创建的数组上使用了.append函数,我们将调用names = [String]()来实际允许值按照单元格的顺序排列。

但是当我这样做的时候,我注意到cpu的使用率有了很大的提高,因为它一直在按照顺序附加它们,比如名字是matt,第二个名字是john等等,然后每次都会创建一个数组的新情况。所以,当它第一次读到matt时,下一个println会打印出来matt,john然后下一个打印出来matt,john,tom等等,直到json的名字列表完成为止。

如果我有500个或更多的名称,那么cpu需要一段时间才能将所有这些名称处理到数组中。我知道肯定有另外一种方法,但是我看到的所有引用都使用.append方法。所以我的代码是names.append(名字)。名字是一个解析的字符串从金丝提斯。从这里开始,我实际上能够填充tableview,这是很好的,它最终正确地显示,但是设备需要一段时间才能填充,因为它首先需要处理每次调用解析时添加所有500个名称。我希望每次都允许重新检查500个名字,以防增加新的名字。这所有存储当前作为本地json文件已经。

下面是我使用的代码,我可以找出UItableview部分,但更多的问题是,追加数组是否是显示已解析数据的最佳和最有效的方式。

代码语言:javascript
运行
复制
let path = NSBundle.mainBundle().pathForResource("List", ofType: "json")
let jsonData = NSData(contentsOfFile: path!, options: NSDataReadingOptions.DataReadingMappedIfSafe, error: nil)
let json = JSON(data: jsonData!)
for (key, subJson) in json["array"] {
    if let Name = subJson["Name"].string {
        NameList.append(Name)
        println(NameList)
    }
}
EN

Stack Overflow用户

回答已采纳

发布于 2015-06-28 09:08:57

也许Swift map函数更有效

代码语言:javascript
运行
复制
…
let json = JSON(data: jsonData!)
var nameList = [String]()
if let subJson = json["array"] as [Dictionary<String,NSObject>]? {
  nameList = subJson.map { $0["name"] as! String }
}
票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31097431

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档