我使用PHPMyAdmin创建了一个数据库。然后我将一个php文件上传到一个Web服务来加载数据库。现在我有php文件的url,它加载了数据库。
此代码可以很好地将数据库加载到应用程序中:
func retrieveData() {
let url:NSURL = NSURL(string: phpURL)!
var data:NSData = NSData(contentsOfURL: url)!
json = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.AllowFragments, error: nil) as NSMutableArray
for (var i:NSInteger = 0; i < json.count; i = i + 1) {
newPlatz = json.objectAtIndex(i).objectForKey("Platz") as? NSString
newVerein = json.objectAtIndex(i).objectForKey("Verein") as? NSString
newPunkte = json.objectAtIndex(i).objectForKey("Punkte") as? NSString
newDifferenz = json.objectAtIndex(i).objectForKey("Differenz") as? NSString
newSpiele = json.objectAtIndex(i).objectForKey("Spiele") as? NSString
var myBundesliga:Bundesliga = Bundesliga.alloc()
myBundesliga.initWithBundesligaID(newPlatz, nVerein: newVerein, nSpiele: newSpiele, nDifferenz: newDifferenz, nPunkte: newPunkte)
bundesligaArray = NSMutableArray.alloc()
//bundesligaArray.addObject(myBundesliga)
println("\(newPlatz!);\(newVerein!);\(newPunkte!);\(newDifferenz!);\(newSpiele!)")
}
}
控制台中的输出:
1;FC Bayern München;17;13;7
2;TSG Hoffenheim;13;5;7
3;Bor. Moenchengladbach;13;5;7
4;Bayer 04 Leverkusen;12;2;7
5;1. FSV Mainz 05;11;4;7
依旧......
完美无缺。但现在我不知道如何在tableview中显示数据。正如您在上面的代码中看到的,两个斜杠后面的行代码不能完美地工作。总是当我运行应用程序时,此行中存在“线程1:断点1.1”错误:
bundesligaArray.addObject(myBundesliga)
我不知道为什么。有人可以帮帮我吗?
答案 0 :(得分:0)
问题在于您如何实例化对象。你有:
bundesligaArray = NSMutableArray.alloc()
应该是:
bundesligaArray = NSMutableArray()
当然,您希望在 for
循环之前定义,而不是在其中。
或者,如果您想使用Swift数组,请将bundesligaArray
定义为:
var bundesligaArray: [Bundesliga]?
你用
实例化它bundesligaArray = [Bundesliga]()
您可以使用
添加对象bundesligaArray?.append(myBundesliga)