天天看點

xcode 4.2 不再支援 Window-Based Application 的解決辦法(轉載)

xcode 4.2 不再支援 Window-Based Application 的解決辦法:

     1.建立空項目 Empty Application。(在Xcode4.2下建立的這個空項目不再有MainWindow.xib檔案了。)

     2.Ctrl+N,建立User Interface下面的Window(選擇“iOS->User Interface->Window),命名成MainWindow.xib。

     3.File Owner修改成UIApplication。(即調出show identity inspector面闆,将file's Owner的屬性Custom Class中将class改為UIApplication。)

xcode 4.2 不再支援 Window-Based Application 的解決辦法(轉載)
     4.從Library庫中,拖個Object出來添加,并修改類為Delegate的那個類,最開始自動生成的那個。(即将新添加的Object的Class改為AppDelegate)
xcode 4.2 不再支援 Window-Based Application 的解決辦法(轉載)
xcode 4.2 不再支援 Window-Based Application 的解決辦法(轉載)

     5.把Delegate類的屬性window聲明加上IBOutlet,這樣才好在IB裡面連接配接。(即将AppDelegate中UIWindow屬性标記為IBOutlet)

        即@property (strong,nonatomic) UIWindow *window;修改為:@property (strong, nonatomic) IBOutlet UIWindow *window;

    然後,把MainWindow.xib的FileOwner的delegate設定為你的AppDelegate。FileOwner的delegate和AppDelegate(Object)連接配接:(藍色連線哦)

xcode 4.2 不再支援 Window-Based Application 的解決辦法(轉載)
       把Window和你AppDelegate中的Outlet關聯起來:
xcode 4.2 不再支援 Window-Based Application 的解決辦法(轉載)

上圖即AppDelegate的outlets和Window連接配接起來。

     6.(可以看到,已經有一個Window對象,此window對象就是iphone的螢幕。)把window屬性連接配接到IB中預設出現的Window。

     7.給剛才的代理再加個@property (strong,nonatomic)IBOutletUITabBarController* rootController;屬性。

     8.在IB中拖個TabBarController出來,并連接配接到前面的Object的rootController。

     9.在代理的didFinishLaunchingWithOptions函數中修改下:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions      
{      
// Override point for customization after application launch.      
// self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];      
[self.windowaddSubview:rootController.view];      
[self.windowmakeKeyAndVisible];      
return YES;      
}      
不需要再建立window,然後把rootcontroller的view添加到目前window下面就可以了。注釋掉 -(BOOL)application:didFinishLaunchingWithOptions:這個與我們從XIB加載相沖突的方法。      
10.關鍵一個步驟,打開項目屬性,在Summary下面的Main Interface裡面選擇MainWindow完事。      
xcode 4.2 不再支援 Window-Based Application 的解決辦法(轉載)