当用户不按特定顺序访问所有三个视图控制器时。我希望该程序中的所有视图控制器都变为绿色。但是只有访问了所有三个班级。我不知道这是coredata还是userdefulat。
import UIKit
class oneV: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
}
class twoV: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
}
class threeV: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
}
答案 0 :(得分:0)
UserDefaults对此非常有用,可以在其UIViewController
函数中为每个viewDidLoad
保存一个标志。
然后将这三个标志加到一个,并在每个viewWillAppear
的{{1}}中对其进行检查。
在下面检查此代码。
UIViewController
用法:在每个// First create this extension to check on each value
public extension UIViewController {
func isAllVistied() -> Bool {
let a = UserDefaults.standard.bool(forKey: "VC1") // Key used to save inside the viewController
let b = UserDefaults.standard.bool(forKey: "VC2")
let c = UserDefaults.standard.bool(forKey: "VC3")
if a && b && c {
return true
} else {
return false
}
}
}
中使用以下代码:
UIViewController