iOS Human Interface Guidelines(原創翻譯)第三章,iosguidelines
適配和布局
·適配建立
通常來說,人們想要在他們所有的裝置上使用他們最喜愛的app,不論是在裝置什麼樣的定向上。在iOS8和稍後的版本中,你可以使用尺寸類和自動布局在裝置放置環境改變時候通過定義螢幕布局,視圖控制器和視圖應當如何調整來協助你滿足這個期望。放置環境的概念可能會涉及到整個螢幕或者僅僅是螢幕的一部分,比如一個快顯功能表的地區或者是在一個分離的視圖控制器中的主要視圖。
iOS定義了兩種尺寸類別:常規和緊湊。常規尺寸類和寬鬆的空間聯絡到一起,緊湊尺寸類和有限的空間聯絡到一起。為了描述一种放置環境,你需要指定一個水平尺寸類和一個垂直(豎直)尺寸類。正如你猜的那樣,一個iOS裝置對於豎直定向能夠使用一個系列的尺寸類,對於水平定向使用一個不同系列的尺寸類。
當一個放置環境的尺寸類改變的時候,iOS可以自動的產生各種各樣的布局改變。舉例來說,當垂直尺寸類從緊湊變為常規的時候,導覽列和工具列會自動變高。
當你依靠尺寸類來駕馭布局中的改變的時候,你的app在任何放置環境下都可以看起來很棒。要想學習在Interface Builder中如何使用尺寸類,請參閱尺寸類設計指導。注意:在一個尺寸類中,務必使用自動布局來對布局產生小的調整,例如展開內容或者壓縮內容。
下述的具體例子能夠協助你看到尺寸類是如何描述不同裝置的放置環境的。舉例來說,iPad在長度和寬度以及兩種定向上使用了常規尺寸類。換句話說,iPad的放置環境總是水平常規和豎直常規的。
iPhone的放置環境可能會改變,這取決於裝置類型和它是何種定向。
在豎直放置環境下,iPone6 Plus使用緊湊的水平尺寸類和緊湊的垂直尺寸類。在水平放置環境下,iPhone6 Plus使用常規的水平尺寸類和緊湊的豎直尺寸類。
所有的其它iPhone模型,包括iPhone6,都是用同樣系列的尺寸類。
在豎直放置環境下,iPhone6,iPhone5和iPhone4s都使用緊湊的水平尺寸類和常規的垂直尺寸類。在水平放置環境下,這些裝置水平和垂直都使用緊湊的尺寸類。
·在每種環境下都提供一種絕佳的體驗
當你利用適配性(自適應性)的時候,你可以確保你的UI對放置環境的改變做出合適的應對。遵循這些指導原則在所有的裝置和定向上給使用者帶來一種絕佳的體驗。
·在所有環境中保持你的注意力在主要內容上。這是你最優先要做的事。人們使用你的app來瀏覽他們關注的內容並和它們進行互動。當放置環境改變時候改變你的焦點會使使用者產生迷惑,並讓他們感到他們已經失去了對app的控制。
·避免布局上不必要的改變。當人們旋轉裝置或者在一個不同的裝置上運行你的app的時候,在所有環境下相似的體驗經曆可以讓人們保持他們的使用模式(行為習慣?)。舉例來說,如果你使用一個水平常規環境下地網格來陳列圖片,即使你可能得調節網格的維度,但是你沒有必要用水平的緊湊環境下的列表來陳列相同的資訊。
·直接告訴使用者如果你的app只能在一中定向下運行。人們希望在不同的定向情況中使用你的app,當你能滿足這個願望的時候,這最好不過。但是如果你的app只能在一中定向下運行很重要的話,你應該:
·避免擺放告訴人們旋轉裝置的UI元素。運行在支援的定向上清楚地告訴使用者去旋轉裝置,如果有必要,不要再UI上添加不必要的裝飾。
·支援定向的變體。舉例來說,如果一個app只能在水平定向下運行,不論Home鍵是在左邊還是右邊握持裝置,人們都應該能夠使用它。並且如果人們在使用app的時候把裝置旋轉了180度,如果app的內容能夠也旋轉180度來做回應,那是最好不過的。
·如果你的app在使用者輸入(輸入有很多形式)的時候解釋了在裝置定向中的改變,那就以app特定的方式處理裝置旋轉。舉例來說,一個讓人們通過旋轉裝置來移動遊戲裡內容的遊戲,不能以旋轉螢幕的方式來回應裝置的旋轉。在像這樣的情況下,你應該以要求的定向所有的變體載入,並且在app的主任務開始之前允許人們在不同的變體之間切換。一旦人們開始主任務就開始以app特定的方式來回應裝置的移動。
·使用布局來傳達
布局不僅僅是包含了在一個app螢幕中UI元素如何顯示。在你的布局中,你向使用者展示什麼是最重要的,他們的選擇是什麼以及事物之間是如何相關的。
·通過提升重要內容或者功能性使聚焦於主任務變得容易。實現這個原則的好方法是把重要的事物放在上半螢幕---並且按照從左至右的慣例---靠近螢幕左邊。
·使用可視化的影響和平衡來向使用者展示螢幕上元素的相對重要性。大事物吸引眼球並且傾向於看起來比小物體更重要。大事物也很方便使用者取觸碰,這使得它們在一些app中尤其有用---例如Phone和Clock---使用者經常在容易分心的環境中使用這些app。
·使用對齊來簡化瀏覽並且傳達分組和體系。對齊傾向於使一個app看起來整潔和有組織。當使用者滾動一螢幕的資訊的時候,對齊還能夠給予使用者空間來聚焦於內容。不同資訊分組的縮排和對齊傳達出分組是如何關聯的,並且使用者找到特定事物會更容易。
·確保主要內容在預設尺寸使用者就能理解。例如,使用者不應該不得不水平滾動來閱讀重要文本,或者放大來看重要的圖片。
·準備好字型大小的改變。使用者希望大多數app當他們在設定中選擇一個不同的字型大小的時候能夠合適地做出回應。為了適應一些字型大小改變,你可能需要改變布局。想獲得