我试图整体避开启动/登录屏幕,如果用户登录则直接进入应用程序的第一页。当我运行下面的代码时,没有任何反应。我打破了,它说当前用户是零,但是当加载视图时,当前用户不是零。
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
self.storyboard = UIStoryboard(name: "Main", bundle: NSBundle.mainBundle())
var currentUser = PFUser.currentUser()
print("user \(currentUser)")
if currentUser != nil {
if(currentUser?.username?.rangeOfString("@music.co") != nil){
self.storyboard?.instantiateViewControllerWithIdentifier("venuehomescreen")
}else{
self.window?.rootViewController = self.storyboard?.instantiateViewControllerWithIdentifier("userhomescreen")
}
}
}
答案 0 :(得分:0)
我通常在我的应用程序中正常进入日志视图控制器,而不是在视图控制器中该日志的viewDidAppear中,我添加类似于以下内容的逻辑:
if PFUser.currentUser() != nil{
//perform segue
//or present view controller modally
}
重要的是让你的登录视图控制器在heiarchy中用于注销等情况,这使你可以放松到视图控制器中的日志。
此外,有必要在viewDidAppear中执行segue,因为只有在您转换的视图控制器添加到heiarchy之后才必须执行视图控制器转换。