我的应用程序打开或切换到主视图时应该调用一个循环。但是,一旦应用程序打开,我就无法弄清楚如何让它运行起来。目前我在viewWillAppear中使用它,当应用程序打开时,它不会被调用,并且用户必须切换到另一个视图并返回以使其更新。
这是我的代码:
var paymentNum = 0
var creditNum = 0
for item in images {
if item as NSObject == 0 {
paymentNum++
} else {
creditNum++
}
}
paymentCounter.text = String(paymentNum) + " Payments"
creditCounter.text = String(creditNum) + " Credits"
我尝试将它放在awakeFromNib中,但正如预期的那样,这只会让应用程序崩溃。
我可以在哪里放置此代码,以便在应用程序打开后立即调用它?
答案 0 :(得分:1)
在viewDidLoad
或viewWillAppear
这样:
super.viewDidLoad()
var creditNum = 0
for item in images {
if item as NSObject == 0 {
paymentNum++
} else {
creditNum++
}
}
paymentCounter.text = String(paymentNum) + " Payments"
creditCounter.text = String(creditNum) + " Credits"
}
通常viewDidLoad
或在viewDidLoad
内调用的函数内。但那是你去看一个新观点的时候。让我们假设你有一个UITabBarController,当你在标签之间移动时,当你切换标签时,你仍然会在每个视图的同一个实例中。如果您需要在每次查看视图时执行代码,请使用viewWillAppear
方法调用您的方法。