if語句我使用的是運行SEGUE。我有if語句在成功運行時打印消息。然而,SEGUE沒有運行,我不知道爲什麼。不順着接下去運行
override func viewDidLoad() {
super.viewDidLoad()
firstField.delegate = self
signUpButtonOutlet.isEnabled = false
// Do any additional setup after loading the view.
let fetchRequest: NSFetchRequest<Check> = Check.fetchRequest()
do {
//go get the results
let searchResults = try getContext().fetch(fetchRequest)
//I like to check the size of the returned results!
print ("num of results = \(searchResults.count)")
//You need to convert to NSManagedObject to use 'for' loops
for check in searchResults as [NSManagedObject] {
//get the Key Value pairs (although there may be a better way to do that...
print("the value was\(check.value(forKey: "isLoggedIn"))")
if (check.value(forKey: "isLoggedIn") != nil) {
self.performSegue(withIdentifier: "loggedInTrue", sender: self)
print("if statement ran")
}
}
} catch {
print("Error with request: \(error)")
}
}
你有沒有試過將您performSegue代碼'viewDidAppear()'? –
就像@MrugeshTank說,把你的segue在viewdidappear中,你不能在viewdidload上做segue – rudydydy
這不是最好的方式來做到這一點,你應該真的把登錄狀態存儲在用戶默認值中,你可以在這裏檢查這個變量您的應用程序委託加載。然後顯示正確的控制器 – Devster101