IOS Xcode Version 11.0 beta 6 刪除Main.storyBoard

Xcode11 刪除storyboard

Xcode 11中創建一個名爲的新項目時,多了一個新類SceneDelegate:

刪除main.storyboard  — 刪除info.plist  storyboard name main   general 刪掉 main interface 內main

不一樣:之前在AppDelegate 

在screenDelegate.m 寫入UIWindow

self.window = [[UIWindow alloc] initWithWindowScene:scene];

@implementation SceneDelegate

- (void)scene:(UIScene *)scene willConnectToSession:(UISceneSession *)session options:(UISceneConnectionOptions *)connectionOptions {

    

    self.window = [[UIWindow alloc] initWithWindowScene:scene];

    self.window.backgroundColor = [UIColor whiteColor];

    ViewController *VC = [[ViewController alloc]init];

    NavihationViewController *NVC = [[NavihationViewController alloc]initWithRootViewController:VC];

    [self.window setRootViewController:NVC];

    [self.window makeKeyAndVisible];

}

@end

 

新的Xcode項目時,你會看到你的AppDelegate分爲兩部分:AppDelegate和SceneDelegate這是iPadOS帶來的新的多窗口支持的結果,並且有效地將應用程序委託的工作分成兩部分。

從iOS 13開始,您的應用代表應該:

  1. 設置應用程序期間所需的任何數據。
  2. 響應任何專注於應用的事件,例如與您共享的文件。
  3. 註冊外部服務,例如推送通知。
  4. 配置您的初始場景。

相比之下,場景代表可以處理應用程序用戶界面的一個實例。因此,如果用戶創建了兩個顯示您的應用程序的窗口,則您有兩個場景,均由同一個應用程序委託支持。

請記住,這些場景旨在彼此獨立工作。因此,您的應用程序不再移動到後臺,而是單個場景執行 - 用戶可以將一個移動到後臺,同時保持另一個打開。

在iOS 13中的新頂級對象是一個UIWindowScene

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章