在你的問題,你寫道:
我可以想像的細碼/十萬這麼多問題的「如果」檢查遍佈整個地方,它會迫使我堅決對UI安排做一個小改動。
避免這種情況的一種方法是創建一個視圖層次結構,從一開始就將iPhone/iPad特定更改的處理分開。您只需設置每個設備最初加載的視圖。然後,像通常那樣創建視圖控制器,但是您也創建了您創建的視圖控制器的子類。每個設備的一個子類。這就是您可以放置設備特定代碼的位置,例如定位處理。就像這樣:
MyViewController.h // Code that is used on both devices
MyViewController_iPhone.h // iPhone specific code, like orientation handling
MyViewController_iPad.h // iPad specific code, like orientation handling
如果你有興趣在此方法中,我建議你讀this article。它以非常好的方式解釋它。
之一上述文章中提到的事情,是這樣的:
的quote--
這種模式的好處是--start我們沒有垃圾我們的代碼是廢話看起來是這樣的:
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
// The device is an iPad running iPhone 3.2 or later.
// set up the iPad-specific view
} else {
// The device is an iPhone or iPod touch.
// set up the iPhone/iPod Touch view
}
---年底quote--
我希望有所幫助。祝你好運!
是的,這是有點什麼即時通訊現在做...感謝 – Mark 2010-05-12 02:56:53
對我willRotateToInterface方法永遠不會被調用。你需要連接一些東西,或者在IB中添加一個監聽器嗎? – 2010-08-13 00:38:26
這是我正在尋找的很好的例子。任何替代的例子? – 2010-12-16 09:50:07