2013-10-24 66 views
2

我正在準備一款應用程序,用於在XCode 5中使用iPhone 4(3.5「屏幕)和iPhone 5(4」屏幕)在iOS 7上進行測試。我遇到的問題是iPhone 4的內容,尤其是底欄(帶有條形項目)不可見。iOS 7 3.5「vs 4」屏幕上的內容轉移

我可以看到它的唯一方法是在我運行之前,進入故事板,並將尺寸從「推測」更改爲視網膜3.5「。我的解決方案是創建兩個故事板,一個用於3.5」和一個用於4 「?

否則它會更有意義,以編程方式檢測裝置和後或移位內容了嗎?

CGSize screenSize = [[UIScreen mainScreen] bounds].size; 

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) { 
if (screenSize.height > 480.0f) { 
    /*Do iPhone 5 stuff here.*/ 
} else { 
    /*Do iPhone 4 stuff here.*/ 
} 
} else { 
/*Do iPad stuff here.*/ 
} 
+0

兩種方式都可以,但Apple喜歡你使用AutoLayout。如果你不是,你可以嘗試設置適當的自動調整大小的掩碼,它也應該工作 – Jack

+0

我正在使用AutoLayout,並且如果可能,寧願使用故事板。這就是爲什麼我對這種調整沒有發生的原因感到困惑。 – Bachzen

回答

5

理論上你可以走這條路線,但是,更好的路線是在故事板中使用自動佈局。進入你的故事板,並檢查文件檢查器中的「使用Autolayout」複選框。然後選擇故事板中的佈局,然後轉到Editor -> Resolve Auto Layout Issues -> Reset to suggested constraints for _____

請注意,您可能必須對它們提供的約束進行一些調整,以確保所有內容都顯示在您想要的位置。爲此,Apple's documentation on Auto Layouts將有所幫助。

1

我有同樣的問題不是你,我的問題是我的觀點的約束。 也許你應該檢查你的約束,一個建議是:去編輯器>解決自動佈局問題>重置爲建議約束。但是你對約束的設置不太熟悉,我建議本教程http://www.youtube.com/watch?v=3to5m3zuTEw 這是非常客觀和容易理解的。