使用Splashscreen来检查tabbarcontroller顶部的更新

时间:2012-11-25 14:15:48

标签: objective-c uiviewcontroller uitabbarcontroller splash-screen

我尝试在应用程序中的tabbarcontroller顶部加载启动画面。 请不要苹果HIG参考,这个启动画面的目的是检查连接性,然后检查内容更新。

更新Splashscreen时会采取什么措施 - >更新视图 - > tabbarcontroller 如果没有任何Splashscreen - > tabbarcontroller

我从splashscreen视图控制器中以模态方式呈现更新视图。

每次启动应用程序以及应用程序从后台返回时,我都无法加载启动画面。

在我使用的appdelegate上:

self.firstViewController = [[FirstViewController alloc]
                            initWithNibName:nil
                            bundle:NULL];
self.secondViewController = [[SecondViewController alloc]
                             initWithNibName:nil
                             bundle:NULL];
self.thirdViewController = [[ThirdViewController alloc]
                            initWithNibName:nil
                            bundle:NULL];
NSArray *twoViewControllers = [[NSArray alloc]
                               initWithObjects: self.firstViewController, self.secondViewController, self.thirdViewController, nil];
self.tabBarController = [[UITabBarController alloc] init];

[self.tabBarController setViewControllers:twoViewControllers];
self.window.rootViewController = self.tabBarController;
self.ecranDemarrage = [[SplashViewController alloc] init];
    self.ecranDemarrage.showsStatusBarOnDismissal = YES;
    self.ecranDemarrage.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
[self.window makeKeyAndVisible];
    [self.tabBarController presentModalViewController:self.ecranDemarrage animated:YES];

好吧,在tabbarcontroller之后显示启动画面......不是一个好点。

我尝试启动applicationdidbecomeactive通知,但是工作但总是首先显示tabbarcontroller然后显示启动画面。

我尝试在将窗口显示之前将启动画面视图添加为子视图,但也没有太大成功。

有人能指出我正确的方向,以便在其他任何事情之前加载启动画面吗?

1 个答案:

答案 0 :(得分:0)

1-您添加了Default.png& Default@2x.png?如果是,则启动屏幕自动显示

2-您也可以这样做:(大多数情况下,如果您在应用程序启动后执行某些功能,例如您想从Web服务器下载数据或设置某些应用程序设置等,则会执行此操作。)

splashcontroller中将rootcontroller添加为AppDelegate,然后将TabbarController显示为模式,或者再次在SpalshController中获取AppDelegate的引用,并将RootViewController更改为TabbarController