0
swift (2.3)
을 사용하고 있으며 내가 만든 변수에 액세스하는 문제가 발생했습니다.범위 외부의 클래스 데이터에 액세스
나는 let.pdf = getData..
) 1을 통해, 내 클래스에서 (readableJSON
통해) JSON 데이터를 얻을 수있어 namesArray
의 업데이트 된 내용을 얻으려고 노력하고 2) pfd.getPetData...
해요 그러나 나는 새로 채워진 namesArray
을이 "스코프"밖에 다시 공급하는 방법을 알아낼 수 없습니다 (올바른 용어입니까?). super.viewDidLoad
외부로 액세스 할 수 있습니다.
궁극적으로, 나는로 이동 배열의 수를 싶습니다
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return namesArray.count
}
다음은 핵심 지역, 분있는 tableView 물건입니다.
import UIKit
import SwiftyJSON
class ViewController: UIViewController, UITableViewDelegate {
var namesArray = [String]()
override func viewDidLoad() {
super.viewDidLoad()
let pfd = getData()
pfd.getPetData { readableJSON in
for (key,subJson) in readableJSON[]["data"] {
let title = subJson["title"].string!
namesArray.append(title)
}
}
print("There are \(self.namesArray.count) items in namesArray now")
}
class getData {
func getPetData(completion: (JSON) ->()) {
let url = NSURL(string: "<my_JSON_URL_HERE>
let task = NSURLSession.sharedSession().dataTaskWithURL(url) { (data, response, error) -> Void in
let readableJSON = JSON(data:data!)
completion(readableJSON)
}
task.resume()
}
}
정말 누구나 생각할 것입니다.
스토리 보드의'TableView'의'IBOutlet'을 클래스에 추가해야합니다. 그래야만 테이블 뷰 작업을 다시로드하고 수행 할 수 있습니다. ' "모호한 참조 회원에게 '의 tableview (_ : numberOfRowsInSection :'"이 추가되면 – Dershowitz123
, 나는 오류 메시지를 받고 있어요 : 내가 말했듯이 –
는 당신이 필요로하는' 는 "자기"를 추가했다 클래스에'TableView'의'IBOutlet'을 추가하십시오. – Dershowitz123