2013-01-17 90 views
0

我正在構建一個支持iOS 5.1.X和6.X的通用應用程序。但我有一個問題給你們。在iOS 5.1.X自動佈局不受支持,我認爲有一個解決方案有3個筆尖1)iPad 2)iPhone視網膜,而不是視網膜3)iPhone 5.我認爲使用3個筆尖的原因之一是因爲加載它與圖形和動畫,但我不知道這將是最好的解決方案。我想知道您對此方法的意見或針對不同解決方案的建議。ios如何使用一個視圖控制器控制多個筆尖

回答

0

不要讓AutoLayout強迫你進入這樣的角落。你必須記住:XIB中的佈局不是絕對的。您可以選擇在-viewDidLoad(或更好的-layoutSubviews)中編寫佈局代碼,並通過一些創造性的數學運算,甚至可以在視圖控制器中使用適當的佈局代碼將應用程序切換爲一個通用XIB。

如果視圖控制器實際上是通用的(並且iPad版本和Pod類設備版本足夠不同以保證單獨的佈局或設計),則您的應用程序不應該有多於2個XIB。

0

你可以做以下

首先確定羯羊設備iphoneipad

int iphone =0; 

if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) 
{ 
    iphone = 0; 
} 
else 
{ 
    iphone = 1; 
} 


NSString* nibName; 

if(iphone == 0) 
{ 
    nibName = @"SettingsiPadView"; 
} 
else 
{ 
    nibName = @"SettingsiPadView"; 
} 

Settings* setObj = [[Settings alloc]initWithNibName:nibName bundle:nil]; 
[self.navigationController pushViewController:setObj animated:YES]; 
0

加載三家發鈔銀行是沒有問題的。想象一下你正在構建一個通用應用程序。現在,如果你嘗試使用相同的筆尖文件fir ipad和iphone那麼它是一個錯誤。你的用戶界面都搞砸了。但對於視網膜和非視網膜,您可以使用1x和2x圖像,以便可以使用相同的nib文件。但如果你真的想在這裏使用3個筆尖文件,我會說使用1x和2個圖像

相關問題