2010-09-03 64 views
2

我有一個iPhone應用程序,我想移植到iPad上,但我希望儘可能少地重複。什麼是同時創建iPhone和iPad應用程序的最佳方式?

人們通常會這樣做嗎?

在xcode中,你可以針對iPhone和iPad有不同的目標,也許可以做一些預處理器檢查?或者最好是完全只有兩個單獨的項目?

注意,我不是在談論在iPad上運行的iPhone應用程序,我的意思是創建一個原生應用程序3.2 ...

編輯

因此,它看起來像創建一個通用的應用程序是這樣的去:

http://developer.apple.com/iphone/library/documentation/General/Conceptual/iPadProgrammingGuide/StartingYourProject/StartingYourProject.html#//apple_ref/doc/uid/TP40009370-CH9-SW8

但我仍然不明白的是如何根據當前的部署選擇不同的NIB文件???

非常感謝

+0

您是否在尋找2x選項?我認爲你不能重新編碼它。我想我搜索了一段時間,因爲我使用的是Cocos2d,發現我無法做到這一點,因爲Cocos2d是iPhone本機。 – 2010-09-03 03:57:50

+0

您是否想要移植到iPad的單獨「高清」應用程序,或者構建可在兩者上運行的通用應用程序? – hotpaw2 2010-09-03 04:01:49

+0

@ hotpaw2,我真的不知道,我想我想要一個通用的應用程序,聽起來像減少重複 – Mark 2010-09-03 04:26:58

回答

3

對於最小的重複,你可以用一個項目中,有2套的筆尖文件,但一組源代碼文件,其中包括對UIUserInterfaceIdiom不同運行時檢查。

如果您需要兩個(或更多)應用程序而不是通用應用程序,只需創建兩個僅包含相應.nib文件的目標,然後使用預處理器宏在每個目標的Build Settings中定義運行時檢查結果#ifdef僅強制使用iPhone或iPad成語。

+0

是的,那是什麼林尋找什麼,UIUserInterfaceIdiom ?我無法找到很多呢? – Mark 2010-09-03 04:48:46

+0

這是一個設備屬性,告訴應用程序它運行的設備,記錄在UIDevice類參考上developer.apple.com – hotpaw2 2010-09-03 05:09:40

+0

啊,那麼,那麼,現在我該如何選擇,基於裝置? – Mark 2010-09-03 06:59:23

1

最新的(3.2.3)Xcode自動生成一個Universal項目,這是一個很好的起點,可以看到如何在一個Xcode項目中定位iPad和iPhone。

File > New Project > Window-based Application > Product : Universal

+0

該項目類型的一個難點在於它不會創建ViewController,因此您可以執行視覺上的操作像旋轉顯示器一樣。所以你必須修改代碼來提供適當的文件。 – LilMoke 2011-03-30 14:43:53

相關問題