parse.com 데이터베이스에서 정보를 가져 와서 배열로 전달하는 앱이 있습니다. while 루프 내부에서이 배열을 println()하면 잘 인쇄됩니다. while 루프 외부에서 인쇄하려고하면 빈 값을 반환합니다. 여섯 반복이 있기 때문에,신속한 범위 지정 문제
var players = [String]()
var total = [String]()
var addTotal:AnyObject!
var addTotalFinal:Int!
var addPlayers:AnyObject!
var addPlayersFinal:Array<Int>!
@IBOutlet weak var tableView: UITableView!
var test: AnyObject!
override func viewDidLoad() {
super.viewDidLoad()
Parse.setApplicationId("KZ758LUTQZQ9Kl69mBDkv7BNLGHyXeKmqtFf7GmO", clientKey: "lOK5rg7wKeTRXZGV7MZBlQ5PTpNlGO0mkgtLkLgH")
var query = PFQuery(className:"runningTotal")
query.whereKey("total", notEqualTo: 0)
query.findObjectsInBackgroundWithBlock
{
(objects: [AnyObject]!, error: NSError!) -> Void in
if error == nil
{
var i = 0
while i < objects.count
{
self.addTotal = objects[i]["total"]
self.addTotalFinal = self.addTotal as Int
self.addPlayers = objects[i]["players"]
self.addPlayersFinal = self.addPlayers as Array
self.players.append("\(self.addPlayersFinal)")
self.total.append("\(self.addTotalFinal)")
++i
}
}
else
{
}
}
navigationItem.title = "\(players)"
}
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int
{
return players.count
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
{
var cell = tableView.dequeueReusableCellWithIdentifier("MyCell", forIndexPath: indexPath) as UITableViewCell
cell.textLabel.text = "\(players[indexPath.row]) - \(total[indexPath.row])"
return cell
}
println 메소드() while 문에서
[[1, 11, 12, 24, 25]]
[2]
[[1, 11, 12, 24, 25], [1, 5, 24, 25, 31]]
[2, 4]
[[1, 11, 12, 24, 25], [1, 5, 24, 25, 31], [2, 12, 25, 15, 31]]
[2, 4, -1]
[[1, 11, 12, 24, 25], [1, 5, 24, 25, 31], [2, 12, 25, 15, 31], [24, 22, 25, 31, 20]]
[2, 4, -1, -6]
[[1, 11, 12, 24, 25], [1, 5, 24, 25, 31], [2, 12, 25, 15, 31], [24, 22, 25, 31, 20], [1, 2, 3, 4, 5]]
[2, 4, -1, -6, 5]
[[1, 11, 12, 24, 25], [1, 5, 24, 25, 31], [2, 12, 25, 15, 31], [24, 22, 25, 31, 20], [1, 2, 3, 4, 5], [1, 10, 11, 2, 12]]
[2, 4, -1, -6, 5, 1]
이 말이 반환 : 여기 내 코드입니다. 그러나 while 문 대신 viewDidLoad 문을 인쇄하면 [] [] [] []
모든 도움을 주셔서 감사합니다.
"viewDidLoad 문"내에서 무엇을 의미합니까? – matt
"while 문에서 println()은"println()'_anyhwere_. – matt
을 구문 분석 문 외부에 배치하는 것을 의미합니다. viewDidLoad 문에서 닫는 괄호 앞에. –