Tyl*_*ser 1 uisplitviewcontroller ios rootview uistoryboard
我有一个登录视图,检查是否有默认设置,然后同步数据.如果没有默认设置,则视图等待用户登录.如果有设置和数据同步正确,它应切换到我的拆分视图.
如果用户输入其登录信息,则代码有效.它同步数据,然后切换视图.如果用户已登录,则会触发该功能并且不会切换视图.
以下是两个路径调用的代码:
-(void)redirect{
NSLog(@"Redirect@");
UISplitViewController *split = [self.storyboard instantiateViewControllerWithIdentifier:@"orders_split"];
[self.view.window setRootViewController:split];
}
Run Code Online (Sandbox Code Playgroud)
如果用户已登录一次,"Redirect @"会在初始加载的日志中显示.我已经确认没有同步错误,它会触发该功能但不执行切换.
我正在从带有导航控制器的标准视图移动到splitview,所以我不能使用手动segue触发器.
Dmi*_*kin 13
尝试使用app delegate:
UISplitViewController *split = [self.storyboard instantiateViewControllerWithIdentifier:@"orders_split"];
MyAppDelegate *appDelegate = (MyAppDelegate *)[[UIApplication sharedApplication] delegate];
appDelegate.window.rootViewController = split;
Run Code Online (Sandbox Code Playgroud)
在我的项目中,我用动画做到了:
+(void)setRootController:(UIViewController*)controller
storyboard:(UIStoryboard*)storyboard{
MyAppDelegate *appDelegate = (MyAppDelegate *)[[UIApplication sharedApplication] delegate];
[UIView
transitionWithView:appDelegate.window
duration:0.5
options:UIViewAnimationOptionTransitionCrossDissolve
animations:^(void) {
BOOL oldState = [UIView areAnimationsEnabled];
[UIView setAnimationsEnabled:NO];
appDelegate.window.rootViewController = controller;
[UIView setAnimationsEnabled:oldState];
}
completion:nil];
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2689 次 |
| 最近记录: |