2011-11-07 64 views
2

我正在寫我的第一個通用應用程序,我已經轉換了我的筆尖,以便有iPad和iPhone版本。iOS通用應用程序 - 訪問iPad和iPhone的不同筆尖

iPad版本位於Resources-iPad文件夾中,名爲「InfoViewController-iPad.xib」。 iPhone版的主文件夾,名爲「InfoViewController.xib」

我有以下動作,以顯示相關的廈門國際銀行

-(void) touchesBegan: (NSSet *) touches withEvent: (UIEvent *) event { 
    if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) 
    { 
     infoViewController = [[InfoViewController alloc] initWithNibName:@"Resources-iPad/InfoViewController-iPad" bundle:nil]; 
    } 
    else 
    { 
     infoViewController = [[InfoViewController alloc] initWithNibName:@"InfoViewController" bundle:nil]; 
    } 

    infoViewController.delegate = self; 
    infoViewController.modalTransitionStyle = UIModalTransitionStyleCrossDissolve; 

    [self presentModalViewController:infoViewController animated:YES]; 

    [infoViewController release]; 

} 

當這個運行在它工作正常的iPhone,但它崩潰時運行在iPad上。 任何幫助將真的被賞識

+0

文件夾名稱的答案是正確的,但你真的應該知道它崩潰的地方,並注意到infoViewController是零。然後試圖弄清楚。 –

回答

1

您不需要將文件夾名稱放在iPad版本的筆尖名稱中,只要它具有與iPhone版本不同的名稱即可找到它。

如果從initWithNibName中刪除文件夾不適用於您,請編輯您的問題並從控制檯發佈回溯結果。

+0

你是對的文件夾名稱是不需要的。但由於某種原因,我也必須從項目中移除InfoViewController-iPad(僅供參考),然後將其添加回來。 – CarlG

0

您不應該在iPad筆尖的名稱上需要前綴Resources-iPad/。 iOS知道如何在你的包中找到資源。您在Xcode中看到的文件夾層次結構只是爲了組織文件和開發人員的利益。

相關問題