现在,我正在尝试情节提要,并且将我的UITableViewController作为我的rootViewController。现在在某些情况下,如果我的用户未登录,我希望另一个UIViewController首先出现。我知道我可以对其进行排序,但是据我了解,TableView仍会尝试加载,除非我提供要尝试首先显示的UIViewController信息,否则这不是我想要的(例如说NSUserDefaults中不存在键)。

所以我的问题是,有没有一种简单的解决方案,我可以将其添加到我的appDelegate中,以从情节提要中“覆盖” rootViewController,或出现在其前面,然后仅在其上放置一个按钮以将其退回到情节提要中的该rootViewController

谢谢!

最佳答案

你可以:


使用其他初始视图控制器(可以在情节提要中指定它)。在该视图控制器中,检查用户是否已登录。如果已登录,则只需通过手动触发的Segue直接过渡到表视图控制器。如果不是,请显示登录屏幕。
子类UITableViewController。在viewDidLoad中检查登录名。如果不是,请提供模式登录视图控制器。


您可能不想在应用程序委托中执行此操作,因为这将需要您手动加载情节提要,这意味着不必要的代码。

10-07 19:56