Я пытаюсь получить общий выигрыш от этого API (Tracker Network API), и я получил ключ, и он отображает ключ и значение следующим образом.
Код приведен ниже, и я также могу получить количество побед (целое число) вместе с этими значениями (названиями).Тем не менее, я не могу понять, как просто получить номер "Wins", не печатая все остальные номера.
Я пытался
print(statsArray[8])
totalWins = statsArray[8]
//["value": 4350, "key": Wins]
print(totalWins.values)
//[Wins, 4350]
, но он не печатает его какЯ хотел бы это напечатать.Я хотел бы, чтобы он распечатал как просто число, чтобы я мог затем загрузить это число в UILabel.
Что я спрашиваю, так это как печатать только сумму "Wins" (целое число), а неостальные 11 выходов JSON?Я просто хочу один из номеров.
let epicName = "Ninja"
let formattedName = epicName.replacingOccurrences(of: " ", with: "%20")
let platform = "pc"
//pc, xbl, psn
let fortniteChallengesURL3 = URL(string: "https://api.fortnitetracker.com/v1/profile/\(platform)/\(formattedName)")
if let unwrappedURL = fortniteChallengesURL3 {
var request = URLRequest(url: unwrappedURL)
request.addValue("MyKey", forHTTPHeaderField: "TRN-Api-Key")
let dataTask = URLSession.shared.dataTask(with: request) { (data, response, error) in
if let data = data {
do {
let json = try JSONSerialization.jsonObject(with: data) as! [String:Any]
//print(json)
for (key, value) in json {
if (key == "lifeTimeStats") {
if let statsArray:[ [String : Any] ] = value as? [ [String : Any] ] {
//accessing the 8th but I am getting the output wrong
/*let firstKey = Array( (value as? [ [String : Any] ])!)[8]
*/
print(statsArray[8])
let totalWins = statsArray[8]
//["value": 4350, "key": Wins]
print(totalWins.values)
//[Wins, 4350]
for dict in statsArray {
for (key, value) in dict {
if (key == "key") {
//print ( "\(firstKey.values)")
print ( "keys are \(value)")
}
/*if (key == "value") {
print ( "value are \(value)")
}*/
}
}
}
}
}
} catch let error as NSError {
print(error.localizedDescription)
DispatchQueue.main.asyncAfter(deadline: .now() ) {
}
}
}
}
dataTask.resume()
}