我需要一些基本过渡工作的帮助。我想我从概念上不理解这一点。
我加载了一个主视图,它在viewDidLoad中加载了“登录屏幕”。 “登录屏幕”是一个自定义xib +自定义视图控制器。 它按以下方式加载:
ISSplashScreenViewController* splashScreenController = [[ISSplashScreenViewController alloc] initWithNibName:@"ISSplashScreen" bundle:nil];
[UIView beginAnimations:nil context:nil];
[UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:splashScreenController.view cache:YES];
[UIView setAnimationDuration: 1.5];
[splashScreenController viewWillAppear:YES];
[self.view addSubview:splashScreenController.view];
[splashScreenController viewDidAppear:YES];
[UIView commitAnimations];
我只能看到状态栏动画(我认为这是因为它隐藏在主窗口中,但我在登录屏幕的viewDidLoad中调用它。)
登录屏幕的正文“刚出现”。
我想知道是否有人可以解释为什么这不起作用,或许可以建议我能做些什么才能使它发挥作用。我想我必须从应用程序的子视图中删除主视图,然后在视图中加载日志。
我也试过这个,但它不起作用。主视图就在那里。
[splashScreenController viewWillAppear:YES];
[self.view.superview addSubview:splashScreenController.view];
[self.view.superview bringSubviewToFront:splashScreenController.view];
[self.view removeFromSuperview];
[splashScreenController viewDidAppear:YES];
非常感谢任何帮助,
由于
答案 0 :(得分:0)
尝试使用-setAnimationTransition:forView:cache:
而不是启动画面控制器的视图调用self.view
。