我正在使用 TwitterKit 制作 Twitter 客户端应用程序。
初始 VC 是带有登录按钮的 loginVC。登录后,它会显示显示推文列表的 tableviewVC。
如果用户之前已经登录并且会话仍然存在,我想直接将用户重定向到 tableviewVC。
因此,我在 viewWillAppear 中实现了检查登录用户并显示 tableviewVC 的代码,但是 tableviewVC 从未出现,尽管用户会话仍然存在。
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
if TWTRTwitter.sharedInstance().sessionStore.hasLoggedInUsers() {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let tweetVC = storyboard.instantiateViewController(withIdentifier: "TweetTableViewController")
present(tweetVC, animated: true, completion: nil)
}
}
但是当我在 viewDidAppear 中实现相同的代码时,tableviewVC 在用户会话仍然存在时出现了。
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
if TWTRTwitter.sharedInstance().sessionStore.hasLoggedInUsers() {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let tweetVC = storyboard.instantiateViewController(withIdentifier: "TweetTableViewController")
present(tweetVC, animated: true, completion: nil)
}
}
我不明白为什么当代码在 viewWillAppear 中时它不起作用。
有人可以为我解释一下吗?