2012-10-18 166 views
-3

嗨,我有我的應用程序內置IOS版本5.1,但現在我想支持它IOS6因爲我所有的視圖在iPhone模擬器的視網膜4英寸已上移。你能幫助解決這個問題的最簡單方法嗎?因爲我在屏幕上有很多視圖提供支持ios6

回答

0

好的,你應該做的是創建另一個XIB,並將其附加上「_iPhone5」。就像這樣:

ViewController1_iPhone5

在這種XIB設置文件所有者的視圖控制器,然後重新佈局所有的UI元素根據自己的喜好,設置網點。現在,無論何時出現此視圖控制器,您都需要檢查設備是否爲iPhone 5,並相應地調整筆尖名稱:

在前綴文件中定義此項(將文件導入到您的每一個創建的文件,所以如果你導入一個類,所有的文件都會導入)。您可以在您的視圖控制器定義它,如果你不想在你的前綴文件(應該在你的支持文件中找到):

#define IS_IPHONE_5 (fabs ((double)[[UIScreen mainScreen] bounds].size.height - (double)568) < DBL_EPSILON) 

然後你可以使用這個:

if (IS_IPHONE_5 && [[UIDevice currentDevice] userInterfaceIdiom] != UIUserInterfaceIdiomPad) { 

    UIViewController *vc1 = [[MenuMileIndexViewController alloc] initWithNibName: @"ViewController_iPhone5" bundle: nil]; 

    // present the view controller 

} 

如果你不使用XIB,並以編程方式編碼您的看法,使用此:

 if (IS_IPHONE_5 && [[UIDevice currentDevice] userInterfaceIdiom] != UIUserInterfaceIdiomPad) { 


// Reposition and resize your subviews 

} 

注:請確保您添加iPhone 5的默認圖像

+0

我沒有使用XIB有沒有其他的替代 – IOSCODER

+0

你是什麼意思你不使用筆尖 – MCKapur

+0

我手動創建硬編碼值的視圖有沒有我的項目中的筆尖文件 – IOSCODER