我正在开发一个 iOS 应用程序。该应用程序有两种状态:用户已登录,用户未登录。
如果您初始化应用程序(用户未登录),则有两个选项卡。然后,如果您愿意,您可以登录,并且该应用程序必须显示 4 个选项卡。如果您关闭应用程序并重新启动,应用程序必须显示 4 个选项卡。
我使用用户首选项来存储凭据用户以了解用户是否已登录,但我该如何实现呢?
如何(使用情节提要)我可以显示带有 4 个选项卡或 2 个选项卡的选项卡栏?
而且,如何在应用程序执行时将 2tabs 选项卡栏更改为 4tabs 选项卡栏(当您初始化应用程序并且您没有登录并且您登录时)?
谢谢。请,如果您能提供代码示例,我将不胜感激。
一个解决方案:你必须创建三个故事板。例如:
init.storyboard
logged.storyboard (with 4 tabs)
nologged.storyboard (with 2 tabs)
在 init.storyboard 你可以开始你想要的故事板
UIViewController *viewController;
if(user is logged)
viewController = [[UIStoryboard storyboardWithName:@"Logged" bundle:NULL] instantiateViewControllerWithIdentifier:@"init_tab"];
else
viewController = [[UIStoryboard storyboardWithName:@"NoLogged" bundle:NULL] instantiateViewControllerWithIdentifier:@"init_tab"];
[self presentViewController:viewController animated:NO completion:nil];
然后,当您要显示具有 4 个选项卡或 2 个选项卡的应用程序时,您应该执行相同的“启动”
UIViewController *vc = [[UIStoryboard storyboardWithName:@"Logged" bundle:NULL] instantiateViewControllerWithIdentifier:@"init_tab"];
[self presentViewController:vc animated:YES completion:^{}];
此代码适用于 nologged.storyboard 中的控制器
检查我是否在情节提要上使用了标识符“init_tab”,因此如果您愿意,可以在每个情节提要的视图上放置一个标识符。