Swift 3 и Xcode 8.2 - неоднозначная ссылка на член 'Subscript'
Я получаю сообщение об ошибке и не знаю, почему... Кто-нибудь может мне помочь? Я в отчаянии! Никакой другой пост не помог мне. Заранее большое спасибо за ваш ответ!!
PS: я получаю ошибку только когда пытаюсь запустить на своем собственном iphone
func parseJson() {
let username: String = UserDefaults.standard.value(forKey: "username")! as! String
let url=URL(string:"https://website.de")
do {
let allBetData = try Data(contentsOf: url!)
let allBet = try JSONSerialization.jsonObject(with: allBetData, options: JSONSerialization.ReadingOptions.allowFragments) as! [String : AnyObject]
if let arrJSON = allBet["bets"] as! [String : AnyObject]? {
for index in 0...arrJSON.count-1 {
let aObject = arrJSON[index] as [String : AnyObject]?
header.append(aObject["header"] as! String)
rowDescription.append(aObject["rowDescription"] as! String)
bodytext.append(aObject["bodytext"] as! String)
}
}
print("data loaded")
self.tableView.reloadData()
}
catch {
self.logout()
}
}
1 ответ
Решение
Хорошо, это абсолютно фундаментально, и вам нужно убедиться, что вы это поняли.
Одна строка за раз...
if let arrJSON = allBet["bets"] as! [String : AnyObject]? {
Здесь вы говорите: "Я делаю эту штуку под названием arrJSON, это словарь со строковыми ключами и любым значением". Хорошо до сих пор? Затем вы...
for index in 0...arrJSON.count-1 {
"Я хотел бы зациклить количество раз, что есть элементы"...
let aObject = arrJSON[index] as [String : AnyObject]?
"... и получить объект, ключ которого - это число".
Вы понимаете проблему сейчас?