2014-02-08 30 views
7

在Xcode中創建故事板文件時,您必須選擇它是否適用於iPhone或iPad。這意味着應該始終將iPhone和iPad用戶界面分爲不同的故事板。這是真的?如何/是否在Xcode中製作通用故事板

我的應用程序有多個故事板。雖然iPhone和iPad上的Main.storyboard文件差別很大,但其他故事板幾乎完全相同。唯一的區別可能是繼續推動iPhone vs iPad上的彈出,這可以通過編程來處理。製作兩個故事板似乎非常愚蠢和多餘。

因此,如果製作一個「通用」故事板,應該在Xcode中選擇iPhone還是iPad?有關係嗎?

+1

你需要單獨的故事板,但是你可以很容易的所有對象從一個故事板複製到其他,然後調整隻有微小的差別。你所有的網點和賽格都會留在那裏,你只需要將網點拖到課堂上,但速度很快。 –

回答

7

從Xcode 6開始,我們可以爲所有設備創建一個統一的故事板。 欲瞭解更多信息 - Documentation

的iOS 8進行處理的屏幕大小和方向更加 多才多藝。爲您的應用創建一個適用於iPad和iPhone的 單一界面比以往更容易,根據需要調整 方向更改和不同的屏幕尺寸。使用通用界面設計應用程序 ,然後針對不同大小的 類自定義它們。調整您的用戶界面以適應各種形式的優勢。您不再需要創建特定的iPad故事板;而不是針對適當的尺寸類別,並調整您的界面 以獲得最佳體驗。

iOS 8中有兩種尺寸等級:常規和緊湊。常規大小類別表示大量的屏幕空間,例如在iPad上的 或通常採用的範例,其提供大量屏幕空間的幻象,例如在iPhone上滾動。每個設備都由一個尺寸等級來定義,這兩個尺寸都是垂直的,並且水平地爲 。 iPad尺寸類別顯示iPad的原生尺寸等級。隨着屏幕空間量可用時,iPad已經在兩個 縱向和橫向的垂直和水平方向上 正常大小的類。

編輯: 它只支持iOS 8(向後兼容僅適用於iOS 7)和更高版本。

+1

這是否與iOS7和iOS6兼容? – AmineG

+0

我認爲支持IOS 7。 – arundevma

6

你必須創建分離每種設備的故事板。如果你想刪除iPad故事板,那麼你的應用會使用iPhone的。當你看到屏幕底部的2x按鈕時,你會意識到它。一切都將被縮放以適應更大的屏幕 - 並且圖形將會非常糟糕。

唯一適用的解決方法是複製粘貼從iPhone Storyboard到iPad故事板的所有內容。只要按照下一個步驟

  1. 打開iPhone.storyboard
  2. CMD + Aenter image description here
  3. CMD + C
  4. 切換到的iPad .storyboard
  5. Press CMD + V, enter image description here
  6. 您會看到,所有屏幕,細節,屬性和操作都將傳輸到新的故事板。所有你需要做的就是修復所有元素的框架,以便它們適合新的屏幕尺寸。

別忘了,一個好的iPad應用程序不應該與iPhone版本相同。你可以用iPad做很多很酷的事情!

+0

如果Main_iPad.storyboard被刪除,則在2x按鈕上同意。然而在我的情況下,我仍然在使用Main_iPad(和Main_iPhone)。它只是後來我想*雙向*設備加載*同*故事板的應用程序(使用'[UIStoryboard storyboardWithName:束:]')。在這種情況下,它們確實是類似的用例。 iPad的UI或多或少顯示全屏iPhone UI中有問題的功能的320x480pt酥料餅,有點像在iPad的日曆應用的創建活動酥料餅。如果兩個設備加載完全相同的故事板,運行時是否會有任何問題? – Steveo

+0

嗯,我敢肯定,這不會有任何問題,但我認爲,這2個按鈕會依然存在。 – etolstoy