- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用 swiftyJson 来解析数据,但不知道如何解析数组。这是代码。
import UIKit
import Alamofire
import SwiftyJSON
class ViewController: UIViewController, UITableViewDataSource, UITableViewDelegate {
var json:JSON = JSON.null
var urlSession = URLSession(configuration: .default)
@IBOutlet weak var myTableView: UITableView!
var pokamon = [[String:AnyObject]]()
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return pokamon.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as! TableViewCell
var dict = pokamon[indexPath.row]
cell.nameLbl.text = dict["name"] as? String
cell.typesLbl.text = dict["types"]?[0] as? String
cell.hpLbl.text = dict["hp"] as? String
cell.subtypeLbl.text = dict["subtype"] as? String
if let image = URL(string: dict["imageUrl"] as! String){
let task = urlSession.downloadTask(with: image) { (url, repsponse, error) in
if error != nil{
print("sorry")
return
}
if let okURL = url{
do{
let downloadImage = UIImage(data: try Data(contentsOf: okURL))
DispatchQueue.main.async {
cell.myImage.image = downloadImage
}
}catch{
print("error")
}
}
}
task.resume()
}
return cell
}
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return 224
}
override func viewDidLoad() {
super.viewDidLoad()
myTableView.delegate = self
myTableView.dataSource = self
Alamofire.request("https://api.pokemontcg.io/v1/cards").responseJSON(completionHandler: { response in
if response.result.isSuccess {
let json:JSON = try! JSON(data: response.data!)
let swiftyJsonVar = JSON(response.result.value!)
if let resData = swiftyJsonVar["cards"].arrayObject{
self.pokamon = resData as! [[String:AnyObject]]
}
if self.pokamon.count > 0{
self.myTableView.reloadData()
}
} else {
print("error: \(response.error)")
}
})
}
}
在 tableView 的 cellForRowAt 中,它显示“下标的使用不明确”,代码如下,不知道如何解决。其余的像“name”、“hp”、“subtype”都没有问题!
cell.typesLbl.text = dict["types"]?[0] as? String
谁能帮我解决这个错误?谢谢!
最佳答案
编译器必须知道任何下标对象的类型。告诉编译器您需要一个字符串数组。
cell.typesLbl.text = (dict["types"] as? [String])?.first
在 Swift 3+ 中,所有 JSON 值都是 Any
而不是 AnyObject 所以声明数组
var pokamon = [[String:Any]]()
关于swift - 如何使用swiftyJson获取TableView中的arrayvalue?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52033809/
我有:- var myArray:Array = array 我想要:- var myJSON:JSON = myArray as? JSON 但我收到警告:-从“数组”转换为无关类型“JSON”总是
真的很麻烦。我在 App Store 上有几个应用程序,其中一些使用 SwiftyJSON,但后一个很奇怪。我正在尝试将其上传到 App Store,但出现了这个奇怪的错误。 No suitable
从我之前的问题中你可以看出,我在解析 JSON 数据时遇到了很多麻烦。经过几天的头痛之后,我认为最好的方法仍然是使用 alamofire/swiftyjson。我还发现了 alamofire-swif
当我将我的 SwiftyJSON 文件添加到我的项目时,它有大约 45 个错误,其中大约 44 个将 as 更改为 as!。现在我被困在第 238 行的最后一个,然后我就可以走了。错误说: 无法将“A
我一直在使用模拟器来测试我的应用程序。今天我决定在模拟器中使用其他设备对其进行测试,令我惊讶的是它在某些设备上启动时崩溃,而在其他设备上却运行良好 我的应用构建运行于: iPad 空气 可调整大小的
这是问题的续集:dyld: Library not loaded: @rpath/SwiftyJSON.framework/SwiftyJSON 从头开始重建项目后(新项目、新 podfile、新文件
我试图弄清楚 SwiftyJSON 但我遇到了问题 下面显示的代码工作正常 import UIKit class ViewController: UIViewController {
我有对象 {"FIELD NAME":{ "SUBNAME":{ "FIELD_ONE":"DATA", "FIELD_TWO":"
我正在使用 SwiftyJSON,这很棒。但是,我在将 JSON(data:) 结果存储在我的 viewController 中时遇到问题。 SwiftyJSON 的标准使用效果很好。 let jso
我一直在学习 SWIFT 应用程序中的 JSON 解析。到目前为止,我一直在使用一个简单的免费 API,没有遇到任何问题,应用程序按设计运行。但现在我正在调用一个 API,该 API 返回一个数组内的
SwiftyJSON.swift 文件给我一个错误“NSNumber”对协议(protocol)“Comparable”的冗余一致性 extension NSNumber: Swift.Compara
我正在使用 Alamofire 从 API 获取数据。我正在使用 SwiftyJSON 来解析 JSON 响应。目前,我正在迭代产品数据,并希望提取产品详细信息并将其显示在 Collection Vi
我试图从我的测试目标包中读取一个文件,将该文件转换为 NSData,并将所述数据传递给我的类,然后类使用它来实例化 SwiftyJSON 实例。似乎我的数据生成正确,但是我的 SwiftyJSON 实
我尝试使用 SwiftyJSON 解析以下 JSON 结构,但我无法弄清楚如何循环遍历“sections”节点。我当前的代码返回每个部分的第一个部分节点,但我无法访问“Section 1b/Secti
我有一个由 .rawString() 转换的 JSON 对象的 NSArray,保存在 NSUserDefaults 上。 这是 lanesToReturn NSArray 的打印结果: ( "{\n
我有一个字典数组: var dictArray = [[String:String]]() 我附加了一些字典并将 dictArray 转换为 JSON: let json = JSON(dictArr
如何在不循环的情况下从一个数组到下一个数组? JSON:/image/34BtT.png 我尝试这样做 guard let items = self.json["data"]["reels_media
我有一个包含一些变量的类,我想通过使用 SwiftyJSON 解析 JSON 输出来创建此类的对象数组(我是 SwiftyJSON 的新手,因此在创建时遇到了一些问题一)并使用表格显示它们 谁能帮我创
我尝试用这种结构创建 JSON: var json: JSON = [ "params": [ "token": Utilities.token,
键“children”中包含的数组包含 100 项。 有没有办法告诉 SwiftyJSON 去抓取一个随机索引?我尝试创建一个随机数 var random = arc4random_uniform(2
我是一名优秀的程序员,十分优秀!