我正在使用XCode 6.4和Swift 2.2。
我有一个排行榜,我想通过标签显示在我的屏幕上。目前,我可以通过我的应用程序成功编写和读取数据库,但它只是将我的数据库的内容打印到xcode终端。我想将这些内容打印到屏幕上的标签上。知道怎么做到这一点吗?我不确定我是否可以遍历标签,所以也许我需要改变逻辑。
我正在使用SQLiteDB
这是我到目前为止所做的:
import Foundation
import UIKit
class FinishTestController: UIViewController {
// MARK: Properties
var highscore:Int?
var finishtime:String?
let db = SQLiteDB.sharedInstance()
@IBOutlet weak var correctAnswers: UILabel!
@IBOutlet weak var Time: UILabel!
@IBOutlet weak var FirstScore: UILabel!
@IBOutlet weak var FirstTime: UILabel!
@IBOutlet weak var SecondScore: UILabel!
@IBOutlet weak var SecondTime: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
addhighscore()
loadhighscores()
}
func addhighscore(){
db.execute("INSERT INTO EASY_MATH5 (Score, Time) Values ('\(highscore!)', '\(finishtime!)'); ", parameters:nil)
}
func loadhighscores(){
var result = db.query("SELECT * from EASY_MATH5 ORDER BY Score DESC, Time ASC LIMIT 5", parameters: nil)
println("===============================")
for row in result
{
//**Print database to labels
FirstScore.text = row["Score"]!.asString()
FirstTime.text = row["Time"]!.asString()
//Print database to terminal
print(row["Rank"]!.asString())
print(" ")
print(row["Score"]!.asString())
print(" ")
println(row["Time"]!.asString())
}
}
override func viewDidAppear(animated: Bool) {
correctAnswers.text = "Score: \(highscore!)"
Time.text = "Time: \(finishtime!)"
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
// MARK: Actions
@IBAction func Menu(sender: UIButton) {
self.performSegueWithIdentifier("goestoMenu", sender: self)
}
}