2013-10-03 32 views
1

是否可以在應用程序的第一次加載時顯示不同的啓動畫面(啓動圖像)?第一次加載時可能會有不同的iOS啓動畫面?

例如,第一次加載會有一個文本(「請稍候,我們設置您的應用程序...」),而下面的加載會有另一個啓動畫面(例如沒有文字)。

回答

3

不可能,因爲您不能更改啓動映像,因爲主包是隻讀的。

然而,您可以在應用程序啓動後顯示一個視圖控制器,並在該視圖中顯示文本。 只需從application:didFinishLaunchingWithOptions:中儘快返回,並且只使用此方法中的文本加載視圖控制器。

然後開始做你的應用程序需要做的事情,並在完成時關閉視圖控制器。

1

不,當您的應用程序尚未執行任何代碼(主要是)時,默認圖像就在那裏。默認屏幕在大多數現代設備上都可以非常快速地加載,所以不需要啓動屏幕,只需使用普通的視圖/視圖控制器即可進行設置。

0

由於@nevan王@rckoenes的兩個前面的回答,您可以提出一個視圖控制器,並在此自定義啓動畫面的文字或圖片什麼的。

添加的方法上didFinishLaunchingWithOptions提出這樣的觀點:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 

    // Create View Controller 
    RootViewController *rootViewController = [[RootViewController alloc] init]; 

    // Create Navigation Controller 
    self.window.rootViewController = rootViewController; 
    [self.window makeKeyAndVisible]; 

    // SplashScreen 
    [self displaySplashscreen]; 

    return YES; 
} 

創建displaySplashscreen

#pragma mark - SplashScreen Methods 
- (void)displaySplashscreen 
{ 
    // Create View 
    self.splashscreenViewController = [[SplashscreenViewController alloc] init]; 

    // Display Splashscreen 
    [_window addSubview:_splashscreenViewController.view]; 

    // Dismiss Splashscreen 
    [self performSelector:@selector(dismissSplashscreen) withObject:nil afterDelay:3.0f]; 
} 

創建SplashscreenViewController並建立你在這個視圖控制器所需要的。