2011-04-12 67 views
0

我正在使用XCode 4.01創建支持XCode(無單元測試)的通用應用程序。XCode 4.01 iOS通用應用程序未顯示iPad查看

在iPhone文件夾中,我使用XIB創建了一個名爲iPhoneViewController的新UIViewController。

在xxxAppDelegate_iPhone.h中,我創建了一個iPhoneViewController實例(稱爲viewController),outlet和property。在.m中我綜合了這個屬性。

在我添加以下代碼xxxAppDelegate_iPhone.m:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 

    // Override point for customization after application launch. 
    [self.window addSubview:viewController.view]; 
    [self.window makeKeyAndVisible]; 

    return YES; 
} 

在IB我打開MainWindow_iPhone並添加一個新的視圖控制器。我將視圖控制器類設置爲iPhoneViewController並鍵入XIB名稱。我將插座連接到應用程序代理。

在iPhone的模擬器中運行應用程序 - 一切正常,因爲它應該是。


現在我添加相同類型的事情爲iPad:

在iPad文件夾中創建一個名爲iPadViewController用XIB1新的UIViewController。

在xxxAppDelegate_iPad.h中,我創建了一個iPadViewController實例(稱爲viewController),outlet和property。在.m中我綜合了這個屬性。

在我添加以下代碼xxxAppDelegate_iPad.m:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 

    // Override point for customization after application launch. 
    [self.window addSubview:viewController.view]; 
    [self.window makeKeyAndVisible]; 

    return YES; 
} 

在IB我打開MainWindow_iPad並添加一個新的視圖控制器。我將視圖控制器類設置爲iPadViewController並輸入XIB名稱。我將插座連接到應用程序代理。

在Simulator for iPad中運行應用程序 - 顯示默認的MainWindow_iPad內容,但不是我添加的新視圖。

我已經做了幾次 - 總是有相同的結果。

調試:

在iPad代碼在這裏設置一個斷點:

[self.window addSubview:viewController.view]; 

的viewController是零,從來沒有得到加載。

如果我以編程方式從XIB加載,我可以讓它顯示,但它不會填滿整個視圖。

我在做什麼錯?

回答

0

您還需要連接IB中的窗口屬性。

+0

如果您的意思是代表插座的窗口連接在 – user704231 2011-04-12 14:56:43

+0

這裏是解決方案。 我將addSubView調用移動到awakeFromNib,一切按預期工作。出於某種原因,當調用applicaitonDidFinishLaunchingWithOptions時,viewController不是從XIB實例化的(僅在iPad版本上) – user704231 2011-04-12 16:24:54

相關問題