如何允许用户 select 使用不同的初始视图控制器
How to allow users select a different Initial View Controller
我有一个应用程序,当用户第一次启动该应用程序时,它会显示一组按钮。一旦用户选择了一个按钮,它将推送到一个新的视图控制器。
如何让应用程序记得在用户下次启动应用程序时直接转到所选 viewcontroller?
如前所述,您应该使用 NSUserDefaults
来保存您在第一次会话时的用户选择。然后在主控制器的 viewDidLoad
或 viewWillAppear
(检查)上,您可以推送保存的那个。
这里是一些如何设置初始控制器的代码。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil];
UIViewController *vc = [storyboard instantiateViewControllerWithIdentifier:@"LogInVC"];//change this identifier to get a different controller
UINavigationController *new = (UINavigationController*)self.window.rootViewController;
NSMutableArray *array = [NSMutableArray arrayWithArray:new.viewControllers];
[array insertObject:vc atIndex:0];
[new setViewControllers:array];
}
我有一个应用程序,当用户第一次启动该应用程序时,它会显示一组按钮。一旦用户选择了一个按钮,它将推送到一个新的视图控制器。
如何让应用程序记得在用户下次启动应用程序时直接转到所选 viewcontroller?
如前所述,您应该使用 NSUserDefaults
来保存您在第一次会话时的用户选择。然后在主控制器的 viewDidLoad
或 viewWillAppear
(检查)上,您可以推送保存的那个。
这里是一些如何设置初始控制器的代码。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil];
UIViewController *vc = [storyboard instantiateViewControllerWithIdentifier:@"LogInVC"];//change this identifier to get a different controller
UINavigationController *new = (UINavigationController*)self.window.rootViewController;
NSMutableArray *array = [NSMutableArray arrayWithArray:new.viewControllers];
[array insertObject:vc atIndex:0];
[new setViewControllers:array];
}