0

使用 iOS 5。目的是在初始屏幕视图上放置一个按钮,这是无法完成的,因为 Default.png 是静态图像,所以我正在做的是在第一个 Viewcontroller 出现时显示一个 modalViewController。这恰好是由 TabController 托管的 ViewController。问题是,一旦 Splash 屏幕消失并显示 SplashViewController(具有相同的图像但处于活动状态),用户就可以简要地看到下面的视图。

我正在使用 presentModalViewController 来显示活动的初始视图。有什么办法可以摆脱这个故障,我在底层 viewcontroller 的 viewWillAppear 方法中调用 presentModalViewController 。我认为我需要以某种方式比这更早地显示活动的初始屏幕

谢谢

4

1 回答 1

0

是的,你可以做到——我的应用程序正是这样做的。我所做的是在“didFinishLaunchingWithOptions:”中,我首先在 UIImageView 中添加了相同的启动图像作为窗口的子视图:

UIImageView *launchView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Default.png"]];
UIImageView *normalView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:<shorter version of launch image, allowing space for activity bar]];

[window addSubview:launchView];
if(isMember) {
    [window addSubview:normalView];
    normalView.alpha = 0; 

    [UIView animateWithDuration:0.25 animations:^
        {
            launchView.alpha    = 0;
            normalView.alpha    = 1; 
        }
        completion:^(BOOL finished)
        {
            [launchView removeFromSuperview];
        } ];
}

[window makeKeyAndVisible];

然后添加tabbarcontroller,即带有一个rootViewController的导航控制器。您可以将 viewController 和 modalController backgroundColor 设置为 clearColor - 您将不得不玩弄这个。

于 2012-08-17T13:33:06.440 回答