我试图在我的两个UIControllers之间添加过渡效果。它们之间的切换工作正常,但我想添加一个很好的过渡效果。
这是我的AppDelegate.m
@implementation LaMetro_88AppDelegate
@synthesize window = _window;
@synthesize tabBarController = _tabBarController;
@synthesize LoadingViewController = _LoadingViewController;
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window.rootViewController = self.LoadingViewController;
[self.window addSubview:tabBarController.view];
[NSTimer scheduledTimerWithTimeInterval:2.0 target:self selector:@selector(changeView) userInfo:nil repeats:NO];
[self.window makeKeyAndVisible];
return YES;
}
-(void)changeView
{
self.window.rootViewController = self.tabBarController;
}
此代码在控制器之间切换,并且工作正常。
答案 0 :(得分:0)
要获得过渡动画,必须显示标签栏控制器。试试这种方式(我没有测试过):
self.tabBarController.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal; // your choice here
self.window.rootViewController presentViewController:self.tabBarController animated:YES completion:^{}];
查看您的代码,可能是您要呈现启动vc。如果只需要在那里展示徽标,那么计时器方法就可以了。 (但是,您可能需要考虑performSelector:withObject:afterDelay:这是隐藏该计时器的一种更漂亮的方式)。
如果启动vc需要在应用程序准备好运行之前做一些工作(比如登录,或其他需要花费足够长时间才能异步执行的操作),我建议您查看this approach I suggest)。< / p>