Swift Haneke: Json TextView 中的数据
Swift Haneke: Json Data in TextView
我使用 Haneke 框架从站点获取数据。
使用 Haneke Framework,我还可以从站点获取图像,并且我可以将这些图像呈现在 UIImageView 上。
现在我想从网站上获取一些文本。
我是这样做的:
cache.fetch(URL: URL).onSuccess { JSON in
println(JSON.dictionary?["index"])
它打印了我来自 "Index" 的所有数据。
现在我想要 "Index" 中的所有数据都应该显示在 UITextView 上。
self.textView.text = JSON.dictionary["index"]
但是没有用。我收到错误:
Cannot assign a value of type 'AnyObject' to a value of type 'String!'
我必须打开它还是?
编译器不知道字典项的类型。
如果您知道它始终是一个字符串,请从 AnyObject
强制向下转换为 String
self.textView.text = JSON.dictionary["index"] as! String
正如我们已经揭示的那样 JSON.dictionary["index"]
是一个数组,这是一个安全的语法 假设数组只包含一个项目
if let indexTextArray = JSON.dictionary?["index"] as? [String] {
if !indexTextArray.isEmpty {
self.textView.text = indexTextArray.first!
}
}
最后,这将打印出 JSON 文本的所有记录。该结构是一个字典数组。文本的格式非常简单(键和值之间有两个制表符)。
cache.fetch(URL: url).onSuccess { JSON in
if let index = JSON.dictionary?["index"] as? [Dictionary<String,String>] {
var resultString = ""
for anItem in index {
for (key, value) in anItem {
resultString += "\(key)\t\t\(value)\n"
}
resultString += "\n\n"
}
self.textView.text = resultString
}
}
}
我使用 Haneke 框架从站点获取数据。 使用 Haneke Framework,我还可以从站点获取图像,并且我可以将这些图像呈现在 UIImageView 上。 现在我想从网站上获取一些文本。
我是这样做的:
cache.fetch(URL: URL).onSuccess { JSON in
println(JSON.dictionary?["index"])
它打印了我来自 "Index" 的所有数据。
现在我想要 "Index" 中的所有数据都应该显示在 UITextView 上。
self.textView.text = JSON.dictionary["index"]
但是没有用。我收到错误:
Cannot assign a value of type 'AnyObject' to a value of type 'String!'
我必须打开它还是?
编译器不知道字典项的类型。
如果您知道它始终是一个字符串,请从 AnyObject
强制向下转换为 String
self.textView.text = JSON.dictionary["index"] as! String
正如我们已经揭示的那样 JSON.dictionary["index"]
是一个数组,这是一个安全的语法 假设数组只包含一个项目
if let indexTextArray = JSON.dictionary?["index"] as? [String] {
if !indexTextArray.isEmpty {
self.textView.text = indexTextArray.first!
}
}
最后,这将打印出 JSON 文本的所有记录。该结构是一个字典数组。文本的格式非常简单(键和值之间有两个制表符)。
cache.fetch(URL: url).onSuccess { JSON in
if let index = JSON.dictionary?["index"] as? [Dictionary<String,String>] {
var resultString = ""
for anItem in index {
for (key, value) in anItem {
resultString += "\(key)\t\t\(value)\n"
}
resultString += "\n\n"
}
self.textView.text = resultString
}
}
}