2014-12-17 藍(lán)藍(lán)設(shè)計(jì)的小編
藍(lán)藍(lán)設(shè)計(jì)( m.bouu.cn )是一家專(zhuān)注而深入的界面設(shè)計(jì)公司,為期望卓越的國(guó)內(nèi)外企業(yè)提供有效的UI界面設(shè)計(jì)、BS界面設(shè)計(jì) 、 cs界面設(shè)計(jì) 、 ipad界面設(shè)計(jì) 、 包裝設(shè)計(jì) 、 圖標(biāo)定制 、 用戶(hù)體驗(yàn) 、交互設(shè)計(jì)、 網(wǎng)站建設(shè) 、平面設(shè)計(jì)服務(wù).
每一個(gè)扁平化界面設(shè)計(jì),都是我們的心靈碰撞致力于最棒的 metro ui 設(shè)計(jì)
來(lái)源:iOS Human Interface Guidelines
如果您想訂閱本博客內(nèi)容,每天自動(dòng)發(fā)到您的郵箱中, 請(qǐng)點(diǎn)這里
iOS 的革新關(guān)鍵詞如下:
無(wú)論你是重新設(shè)計(jì)一個(gè)現(xiàn)有的應(yīng)用或是重新開(kāi)發(fā)一個(gè),請(qǐng)嘗試下列方法:
在整個(gè)設(shè)計(jì)過(guò)程中,時(shí)刻準(zhǔn)備著推翻先例,假設(shè)問(wèn)題,并以重點(diǎn)內(nèi)容和功能(為目標(biāo))來(lái)驅(qū)動(dòng)每個(gè)細(xì)節(jié)設(shè)計(jì)。
雖然明快美觀(guān)的UI和流暢的動(dòng)態(tài)效果是iOS體驗(yàn)的亮點(diǎn),但內(nèi)容始終是iOS的核心。
這里有一些方法,以確保你的設(shè)計(jì)能夠提升你的應(yīng)用功能體驗(yàn)并關(guān)注內(nèi)容本身。
充分利用整個(gè)屏幕。天氣應(yīng)用是最好的例子:漂亮的天氣圖片充滿(mǎn)全屏,呈現(xiàn)用戶(hù)所在地當(dāng)前天氣情況這最重要的信息,同時(shí)也留出空間呈現(xiàn)了每個(gè)時(shí)段的氣溫?cái)?shù)據(jù)。
盡量減少視覺(jué)修飾和擬物化設(shè)計(jì)的使用。UI面板、漸變和陰影有時(shí)會(huì)讓UI元素顯得很厚重,致使搶了內(nèi)容的風(fēng)頭。應(yīng)該以?xún)?nèi)容為核心,讓UI成為內(nèi)容的支撐。
嘗試使用半透明底板。半透明的控件——比如控制中心——關(guān)聯(lián)了使用場(chǎng)景,幫助用戶(hù)看到更多可用的內(nèi)容,并可以起到短暫的提示作用。在iOS中,透明的控件只讓它遮擋住的地方變得模糊——看上去像蒙著一層米紙一樣——它并沒(méi)有遮擋屏幕剩余的部分。
保證清晰度是另一個(gè)方法,以確保你的應(yīng)用中內(nèi)容始終是核心。以下是幾種方法,讓最重要的內(nèi)容和功能清晰,易于交互。
使用大量留白。留白讓重要內(nèi)容和功能顯得更加醒目。此外,留白可以傳達(dá)一種平靜和安寧的視覺(jué)感受,它可以使一個(gè)應(yīng)用看起來(lái)更加聚焦和。
讓顏色簡(jiǎn)化UI。一個(gè)主題色——比如在記事本中使用的黃色——讓重要區(qū)域更加醒目并巧妙地表示交互性。這同時(shí)也給了一個(gè)應(yīng)用一個(gè)統(tǒng)一的視覺(jué)主題。內(nèi)置應(yīng)用使用家族化的系統(tǒng)顏色,無(wú)論在深色和淺色背景上看起來(lái)都干凈,純粹。
通過(guò)使用系統(tǒng)字體確保易讀性。iOS的系統(tǒng)字體自動(dòng)調(diào)整行間距和行的高度,使閱讀時(shí)文本清晰易讀,無(wú)論何種大小的字號(hào)都表現(xiàn)良好。無(wú)論你是使用系統(tǒng)或是自定義字體,務(wù)必使用動(dòng)態(tài)型,這樣你的應(yīng)用可以在用戶(hù)選擇不同字號(hào)時(shí)做出應(yīng)對(duì)。
使用無(wú)邊框的按鈕。默認(rèn)情況下,所有bar上的按鈕都是無(wú)邊框的。在內(nèi)容區(qū)域,無(wú)邊框按鈕以文案、顏色以及操作指引標(biāo)題來(lái)表明按鈕功能。當(dāng)按鈕被激活時(shí),該按鈕呈現(xiàn)高亮的淺色狀態(tài)來(lái)作為操作響應(yīng)。
iOS經(jīng)常在不同的層級(jí)上展現(xiàn)內(nèi)容,用以表達(dá)分組和位置,并幫助用戶(hù)了解在屏幕上的對(duì)象之間的關(guān)系。
通過(guò)使用一個(gè)在主屏幕上方的半透明背景浮層來(lái)區(qū)分文件夾和其余部分的內(nèi)容。
備忘錄以不同的層級(jí)展示,如插圖所示。用戶(hù)在使用備忘錄里的某個(gè)條目時(shí),其他的條目被收起在屏幕下方(譯者按:其實(shí)這個(gè)視覺(jué)提示使用起來(lái)很隱晦)。
日歷有較深的層級(jí),當(dāng)他們?cè)诜喣辍⒃?、日的時(shí)候,以及增強(qiáng)的交互動(dòng)畫(huà)給用戶(hù)一種層級(jí)縱深感(循序切換的層次,從年到月到日)。在滾動(dòng)年份視圖時(shí),用戶(hù)可以即時(shí)看到今天的日期以及其他日歷任務(wù)。當(dāng)用戶(hù)處于月份視圖時(shí),點(diǎn)擊年份視圖按鈕,月份會(huì)縮小至年份視圖中的所處位置。
今天的日期依然處于高亮狀態(tài),年份出現(xiàn)在返回按鈕處,這樣用戶(hù)可以清楚地知道他們?cè)谀膬?,他們從哪里進(jìn)來(lái)并且知道如何返回。
類(lèi)似的過(guò)渡動(dòng)畫(huà)出現(xiàn)在用戶(hù)選擇一個(gè)日期時(shí):月份視圖從所選位置分開(kāi),將當(dāng)前的周日期推向屏幕頂端并翻轉(zhuǎn)出以小時(shí)為單位的當(dāng)天時(shí)間視圖。這些動(dòng)畫(huà)加強(qiáng)了日歷上年月日之間的關(guān)系的感知度。
幾乎所有的iOS 應(yīng)用都應(yīng)用了UIKit framework中定義的組件。了解這些組件的名字,作用和構(gòu)成能夠幫助你設(shè)計(jì)應(yīng)用過(guò)程中做出更好的決定。
UIKit提供的UI組件大致分成以下4種大類(lèi):
Bars:包含了導(dǎo)航信息,告訴用戶(hù)他們所在的位置并包含了一些能幫助用戶(hù)瀏覽或啟動(dòng)某些操作的控制按鈕。
內(nèi)容視圖:包含了應(yīng)用的主體內(nèi)容以及某些操作行為,比如滾動(dòng)、插入、刪除、排序等等。
控制按鈕:展示信息或者控制動(dòng)作。
臨時(shí)視圖:短時(shí)間出現(xiàn),給用戶(hù)重要信息或者額外的選擇或者其他功能。
除了定義UI組件,UIKit也定義對(duì)象實(shí)現(xiàn)的功能,例如手勢(shì)識(shí)別、繪圖、輔助功能和打印支持。
從編程的角度來(lái)說(shuō),UI組件被認(rèn)為是不同類(lèi)別的視圖,因?yàn)樗麄儚腢IView得到繼承。視圖能繪制屏幕內(nèi)容并且知道用戶(hù)何時(shí)觸摸了屏幕。視圖的所有類(lèi)型有:控件(比如按鈕和滑塊),內(nèi)容視圖(比如集合視圖和表格視圖),以及臨時(shí)視圖(如警告提示和動(dòng)作菜單)。
要在應(yīng)用中管理一組或者一系列的視圖,通常需要使用一個(gè)視圖控制器,它能協(xié)調(diào)視圖的顯示內(nèi)容,實(shí)現(xiàn)與用戶(hù)交互的功能并能在不同屏幕內(nèi)容之間切換。比如,“設(shè)置”使用了一個(gè)導(dǎo)航控制器來(lái)展示其視圖層級(jí)。
下面是一個(gè)例子,關(guān)于視圖與視圖控制器如何結(jié)合并呈現(xiàn)iOS 應(yīng)用的UI。
雖然開(kāi)發(fā)者認(rèn)為真正起到作用的是視圖和視圖控制器,但一般用戶(hù)感知到的iOS應(yīng)用是不同屏幕內(nèi)容的集合。從這個(gè)角度來(lái)看,在應(yīng)用里,屏幕內(nèi)容一般對(duì)應(yīng)于一個(gè)獨(dú)特的視覺(jué)狀態(tài)或者模式。
注:一個(gè)iOS應(yīng)用程序包含一個(gè)窗口。但是,不同于計(jì)算機(jī)程序中的窗口,iOS窗口沒(méi)有可見(jiàn)的部分并且不能在屏幕上被移動(dòng)到另一個(gè)位置。很多iOS應(yīng)用程序只有一個(gè)窗口;可以支持外部顯示設(shè)備器的應(yīng)用程序可以有不止一個(gè)窗口。
在iOS Human Interface Guidelines中,screen這個(gè)詞和大部分用戶(hù)理解的一樣。作為一個(gè)開(kāi)發(fā)者,你也許需要讀一下其他與UIscreen相關(guān)的章節(jié),這樣你可以更好的了解如何關(guān)聯(lián)外部屏幕。
人們通常想隨心所欲地使用自己喜歡的應(yīng)用程序。在iOS 8及未來(lái)的版本中,你可以使用不同分辨率和自動(dòng)布局來(lái)幫助你定義屏幕布局視圖,視圖控制器以及需要隨顯示環(huán)境改變的視圖(顯示環(huán)境display environment的概念指的是設(shè)備的整個(gè)屏幕或者其中一部分,比如一個(gè)跳出菜單區(qū)域或一個(gè)分視圖控制器的主視圖部分)。
iOS定義了兩個(gè)尺寸類(lèi)別(size class),常規(guī)的(regular)和壓縮的(compact)。常規(guī)尺寸有著較易拓展的空間,而壓縮尺寸約束了空間的使用。想要定義一種顯示環(huán)境,你需要定義橫縱尺寸類(lèi)型。如你所想,iOS設(shè)備可以有橫屏豎屏兩種不同的使用模式。
iOS能隨著顯示環(huán)境和尺寸類(lèi)別變化而自動(dòng)生成不同布局。舉個(gè)例子,當(dāng)垂直尺寸從壓縮變?yōu)槌R?guī)時(shí),導(dǎo)航欄和工具欄會(huì)自動(dòng)變高。
當(dāng)你靠尺寸類(lèi)別來(lái)驅(qū)動(dòng)布局變化時(shí),你的應(yīng)用在任何顯示環(huán)境時(shí)都能顯示得很好。關(guān)于如何在Interface Builder中更好的使用尺寸類(lèi)別,你可以查閱Size Classes Design Help。
注:在一種尺寸類(lèi)別中,持續(xù)使用Auto Layout進(jìn)行小的布局調(diào)整,比如拉伸或壓縮內(nèi)容。
下面的實(shí)例可以幫助你理解尺寸類(lèi)型是如何適配不同設(shè)備的顯示環(huán)境。例如:iPad在長(zhǎng)寬和橫屏豎屏?xí)r都使用常規(guī)尺寸類(lèi)型。換句話(huà)說(shuō),iPad顯示環(huán)境一直處于垂直和水平的常規(guī)狀態(tài)。
iPhone的顯示環(huán)境可根據(jù)不同的設(shè)備和不同的握持方向而改變。
豎屏?xí)r,iPhone6 Plus使用的是常規(guī)高度和壓縮寬度類(lèi)型。
橫屏?xí)r,iPhone6 Plus使用的是壓縮高度和常規(guī)寬度類(lèi)型。
其他iPhone型號(hào),包括iPhone6使用相同的尺寸類(lèi)型設(shè)置。
豎屏?xí)r,iPhone 6,iPhone 5 和iPhone 4S使用的是壓縮寬度和常規(guī)高度。
橫屏?xí)r,這些設(shè)備在寬高上使用的都是壓縮類(lèi)。
當(dāng)你使用自適應(yīng)來(lái)開(kāi)發(fā)UI時(shí),你可以保證UI跟隨顯示環(huán)境變化而適當(dāng)?shù)仨憫?yīng)。遵照這些指南,你可以給用戶(hù)良好的設(shè)備響應(yīng)體驗(yàn)。
在所有環(huán)境下都保持對(duì)主體內(nèi)容的專(zhuān)注。這是最高優(yōu)先級(jí)。人們使用應(yīng)用時(shí),與感興趣的內(nèi)容發(fā)生互動(dòng)。當(dāng)使用環(huán)境變化的同時(shí),改變專(zhuān)注點(diǎn)會(huì)讓用戶(hù)感覺(jué)到迷失方向,喪失了對(duì)應(yīng)用的控制。
避免布局上不必要的變化。在所有環(huán)境中類(lèi)似的使用體驗(yàn)讓人們?cè)谛D(zhuǎn)設(shè)備或在不同設(shè)備上運(yùn)行你的應(yīng)用時(shí)維持使用模式。例如,如果你使用一個(gè)網(wǎng)格在水平的常規(guī)模式下顯示圖像,你無(wú)需在一個(gè)列表中展示與壓縮模式下相同信息,雖然你可能調(diào)整了網(wǎng)格的尺寸。
如果你的應(yīng)用只在一個(gè)方向上運(yùn)行,那么請(qǐng)直接一點(diǎn)。人們希望在各種握持方式下都可以使用你的應(yīng)用,能滿(mǎn)足這個(gè)期待是最好的。但是,如果你的應(yīng)用只在一個(gè)方向下運(yùn)行,那么以下幾點(diǎn)請(qǐng)務(wù)必注意:
如果你的應(yīng)用將設(shè)備方向翻轉(zhuǎn)視為用戶(hù)輸入(的一種指令),那么就按照程序設(shè)定的方式來(lái)響應(yīng)設(shè)備翻轉(zhuǎn)。舉個(gè)例子,一個(gè)游戲讓用戶(hù)利用設(shè)備翻轉(zhuǎn)來(lái)移動(dòng)游戲中的部件,那么這個(gè)游戲應(yīng)用本身(的UI)不能對(duì)翻轉(zhuǎn)屏幕產(chǎn)生響應(yīng)。在這種情況下,你必須關(guān)聯(lián)兩個(gè)需要變化的方向,并且允許人們?cè)谶@兩個(gè)方向切換直到他們開(kāi)始(了解并執(zhí)行)應(yīng)用的主體任務(wù)。一旦人們開(kāi)始執(zhí)行主要任務(wù),那就開(kāi)始按程序設(shè)定的那樣來(lái)響應(yīng)設(shè)備的動(dòng)作吧。
布局包含的不僅僅是一個(gè)應(yīng)用屏幕上的UI元素外觀(guān)。你的布局,應(yīng)該告訴用戶(hù)什么是最重要的,他們的選擇是什么,以及事物是如何關(guān)聯(lián)起來(lái)的。
提升重要內(nèi)容或功能,讓用戶(hù)容易集中注意在主要任務(wù)上。有幾個(gè)比較好的辦法是在屏幕上半部分放置主要內(nèi)容,以從左到右的習(xí)慣,從靠近左側(cè)的屏幕開(kāi)始。
使用視覺(jué)化的重量和平衡向用戶(hù)展示相關(guān)的屏顯重要元素。大型控件吸引眼球,而比小的控件更容易在出現(xiàn)時(shí)被注意到。而且大型控件也更容易被用戶(hù)點(diǎn)擊,這讓它們?cè)趹?yīng)用中更加有用——就像電話(huà)和時(shí)鐘(上面的按鈕)——用戶(hù)經(jīng)常在容易分心的環(huán)境中能(正常)使用它們。
使用對(duì)齊來(lái)讓閱讀更舒緩,讓分組和層次之間更有秩序。對(duì)齊讓?xiě)?yīng)用看起來(lái)整潔而有序,也讓用戶(hù)在專(zhuān)注于屏幕時(shí)更有空間,從而專(zhuān)注于重要信息。不同信息組的縮進(jìn)與對(duì)齊讓它們之間的關(guān)聯(lián)更清晰,也讓用戶(hù)更容易找到某個(gè)控件。
確保用戶(hù)能明白處于默認(rèn)尺寸的首要內(nèi)容的含義。例如,用戶(hù)無(wú)需水平滾動(dòng)就能看到重要的文本,或不用放大就可以看到主體圖像。
準(zhǔn)備好改變字體大小。用戶(hù)期望大多數(shù)應(yīng)用能有設(shè)置字號(hào)大小的功能。為了適應(yīng)一些文本大小的變化,你也許需要調(diào)整布局;想要得到更多文本顯示相關(guān)的信息,你可以查閱章節(jié)Text Should Always Be Legible.
盡量避免UI上不一致的表現(xiàn)。在一般情況下,有著相似功能的控件看起來(lái)也應(yīng)該類(lèi)似。用戶(hù)常常認(rèn)為他們看到的不同總有原因,而且他們傾向于花時(shí)間去嘗試(譯者按:因此為了避免用戶(hù)做無(wú)用的嘗試所以建議類(lèi)似功能外觀(guān)一樣)。
給每個(gè)互動(dòng)的元素充足的空間,從而讓用戶(hù)容易操作這些內(nèi)容和控件。常用的點(diǎn)按類(lèi)控件的大小是44 x 44點(diǎn)(points)。
有種說(shuō)法是用戶(hù)往往不會(huì)花超過(guò)一兩分鐘去審視一個(gè)新應(yīng)用,當(dāng)你將應(yīng)用從打開(kāi)到啟動(dòng)這段時(shí)間壓縮得很短,并且同時(shí)在載入過(guò)程中呈現(xiàn)一些對(duì)用戶(hù)有幫助的內(nèi)容,你就會(huì)激發(fā)用戶(hù)的興趣并給所有用戶(hù)一個(gè)驚喜。
重要:不要在安裝過(guò)程結(jié)束后告訴用戶(hù)需要重啟設(shè)備。重啟需要時(shí)間并且會(huì)讓人覺(jué)得你的應(yīng)用看上去不可靠而且很難使用。
如果你的應(yīng)用有內(nèi)存使用問(wèn)題,或者不重啟就無(wú)法流暢運(yùn)行,你必須聲明這些問(wèn)題。關(guān)于如何開(kāi)發(fā)一款性能良好的應(yīng)用,請(qǐng)查閱iOS應(yīng)用編程指南。
盡可能避免使用閃屏或者其他啟動(dòng)體驗(yàn)。用戶(hù)能夠在啟動(dòng)后立即開(kāi)始使用應(yīng)用是最好不過(guò)的。
避免讓用戶(hù)做過(guò)多設(shè)置。而應(yīng)該如此:
盡可能讓用戶(hù)晚一些再登錄。最理想的狀態(tài)是,用戶(hù)在無(wú)需登錄的情況下就能盡量多地瀏覽內(nèi)容并使用部分功能。例如,App Store應(yīng)用會(huì)在用戶(hù)瀏覽商品并確定進(jìn)行購(gòu)買(mǎi)時(shí),才要求用戶(hù)進(jìn)行登錄。對(duì)于必須登錄才能進(jìn)行后續(xù)瀏覽和操作的應(yīng)用,用戶(hù)往往會(huì)直接放棄。
如果你的應(yīng)用必須先登錄后使用,那么你應(yīng)該在登錄頁(yè)面有一些簡(jiǎn)短的文字,來(lái)描述為什么必須先登錄,以及這樣做會(huì)給用戶(hù)帶來(lái)什么好處。
謹(jǐn)慎使用新手引導(dǎo)(介紹應(yīng)用的功能和如何進(jìn)行操作)。在考慮新手引導(dǎo)之前,你應(yīng)該完善你的應(yīng)用,盡可能使應(yīng)用的功能直觀(guān)和易于尋找。有句話(huà)說(shuō)得好,好的應(yīng)用不需要新手引導(dǎo)。如果你確實(shí)覺(jué)得需要新手引導(dǎo),那么請(qǐng)參考如下的建議,設(shè)計(jì)一個(gè)簡(jiǎn)潔、有針對(duì)性并且不妨礙用戶(hù)的新手引導(dǎo)。
不要太早要求用戶(hù)去給你的應(yīng)用評(píng)分。過(guò)早要求用戶(hù)進(jìn)行評(píng)分可能會(huì)適得其反。如果你想獲得用戶(hù)有價(jià)值的反饋和評(píng)論,在邀請(qǐng)用戶(hù)評(píng)論之前,請(qǐng)給他們一點(diǎn)時(shí)間來(lái)使用你的應(yīng)用,并對(duì)你的應(yīng)用形成印象。例如,你可以等用戶(hù)訪(fǎng)問(wèn)了一定數(shù)量的頁(yè)面或完成了一定數(shù)量的任務(wù)之后,再邀請(qǐng)他們進(jìn)行評(píng)價(jià)。
一般建議按照屏幕默認(rèn)的定向方式啟動(dòng)你的應(yīng)用。盡管如此,如果你的應(yīng)用只有一種屏幕方向,那么就始終以這個(gè)方向啟動(dòng),讓用戶(hù)在他們自己需要時(shí)再改變?cè)O(shè)備方向。例如,一個(gè)游戲或者媒體觀(guān)看應(yīng)用只在橫屏模式下運(yùn)行,那么就應(yīng)該以橫屏模式啟動(dòng),即使設(shè)備當(dāng)前處于豎屏模式。這樣的話(huà),如果用戶(hù)在豎屏模式下打開(kāi)應(yīng)用,他們也知道應(yīng)該把設(shè)備轉(zhuǎn)成橫屏來(lái)進(jìn)行使用。
注:最好讓橫屏應(yīng)用支持兩種模式的橫屏,即home鍵處于左右兩側(cè)的狀態(tài)。如果設(shè)備當(dāng)前已經(jīng)處于橫向狀態(tài),那么就按照當(dāng)前狀態(tài)啟動(dòng)應(yīng)用,除非你有充分的理由不這么做。其他情況時(shí),可以考慮按home鍵處于右側(cè)的方式啟動(dòng)應(yīng)用。(想要了解更多關(guān)于支持不同設(shè)備方向的內(nèi)容,請(qǐng)參閱Respond to Changes in Device Orientation.)
準(zhǔn)備一張與應(yīng)用首頁(yè)看上去一樣的閃屏。iOS會(huì)在啟動(dòng)應(yīng)用時(shí)調(diào)用這張圖,這樣可以讓用戶(hù)覺(jué)得啟動(dòng)速度很快,降低對(duì)等待時(shí)間的感知度。具體如何制作閃屏,請(qǐng)查閱Launch Images。(譯者注:Launch Images章節(jié)處在iOS Human Interface Guidelines的Icon and Image Design部分,翻譯將在后續(xù)更新中放出,煩請(qǐng)各位耐心等候。)
如果可能,不要讓用戶(hù)在初次啟動(dòng)應(yīng)用時(shí)閱讀免責(zé)聲明或者確認(rèn)用戶(hù)協(xié)議。你可以直接在A(yíng)pp Store展示這些內(nèi)容,使用戶(hù)在下載前就有所了解;雖然這個(gè)辦法能最大地減少麻煩,但也不是一直可行。如果在某些情況下你必須展示這些內(nèi)容,要確保它們與UI保持統(tǒng)一并在產(chǎn)品功能與用戶(hù)體驗(yàn)之間達(dá)成平衡。
在應(yīng)用重啟后,需要恢復(fù)到用戶(hù)退出使用時(shí)的狀態(tài),讓他們可以從中斷之處繼續(xù)使用。無(wú)需讓用戶(hù)記住是如何達(dá)到此種退出狀態(tài)的。
iOS 應(yīng)用無(wú)需關(guān)閉或退出選項(xiàng)。當(dāng)用戶(hù)切換應(yīng)用,回到主屏幕或者將設(shè)備調(diào)至睡眠模式的時(shí)候,其實(shí)就是停止了當(dāng)前應(yīng)用的使用。
當(dāng)用戶(hù)切換應(yīng)用時(shí),iOS的多任務(wù)系統(tǒng)會(huì)將其放置到后臺(tái)并將新應(yīng)用的UI替換上來(lái)。在這種情況下,你必須做到以下幾點(diǎn):
有些應(yīng)用可能需要一直在后臺(tái)運(yùn)行。例如,用戶(hù)可能希望能在使用一個(gè)應(yīng)用的同時(shí)還能一直聽(tīng)歌,接著又想用另外一個(gè)應(yīng)用來(lái)檢查代辦項(xiàng)或者玩游戲。關(guān)于如何正確處理多任務(wù),請(qǐng)查閱Multitasking。(譯者注:Multitasking章節(jié)處在iOS Human Interface Guidelines的iOS Technologies部分,翻譯將在后續(xù)更新中放出,煩請(qǐng)各位耐心等候。)
不要強(qiáng)制讓?xiě)?yīng)用退出。因?yàn)檫@樣會(huì)讓用戶(hù)誤以為是crash。如果有問(wèn)題產(chǎn)生,需要告訴用戶(hù)具體狀況以及如何解決。以下有兩個(gè)建議,取決于出現(xiàn)的問(wèn)題有多嚴(yán)重而酌情使用:
如果應(yīng)用中所有的功能當(dāng)前都不可用,那么應(yīng)該顯示一些內(nèi)容來(lái)解釋當(dāng)前的情形,并建議用戶(hù)如何進(jìn)行后續(xù)操作。這部分內(nèi)容給予了用戶(hù)以反饋,使用戶(hù)相信你的應(yīng)用現(xiàn)在沒(méi)問(wèn)題。同時(shí)這也可以穩(wěn)定用戶(hù)情緒,讓他們決定是否要采取糾正措施,繼續(xù)使用應(yīng)用,還是切換到另一個(gè)應(yīng)用。
如果只有部分功能不可用,那么只要當(dāng)用戶(hù)使用這些功能時(shí)顯示提示即可。不然的話(huà),用戶(hù)就應(yīng)該能正常使用應(yīng)用的其他功能。如果你決定使用警告框來(lái)進(jìn)行提示,請(qǐng)確保只在用戶(hù)嘗試使用不可用的功能時(shí)再顯示。
除非導(dǎo)航設(shè)計(jì)的不合理,不然用戶(hù)不應(yīng)明顯察覺(jué)到應(yīng)用中的導(dǎo)航體驗(yàn)。放置導(dǎo)航到一個(gè)能夠支撐你的應(yīng)用結(jié)構(gòu)和目的卻又不過(guò)分引起用戶(hù)注意的狀態(tài)。
廣義來(lái)說(shuō),有三種主要類(lèi)型的導(dǎo)航,每種導(dǎo)航都有其適應(yīng)的應(yīng)用結(jié)構(gòu):
在分層應(yīng)用中,用戶(hù)在每個(gè)層級(jí)中都要選擇其中一項(xiàng),直到目的層級(jí)。如果要切換到另一個(gè)層級(jí),用戶(hù)必須回退一些層級(jí),或者直接回到初始層級(jí)進(jìn)行再次選擇。系統(tǒng)的設(shè)置和郵件應(yīng)用在這方面是很好的示范,可以參考他們。
在扁平應(yīng)用中,用戶(hù)可以從一個(gè)主要分類(lèi)直接切換到另一個(gè),因?yàn)樗械闹饕诸?lèi)都可以從主屏直接訪(fǎng)問(wèn)。音樂(lè)和App Store是兩個(gè)使用扁平結(jié)構(gòu)的好例子。
在內(nèi)容驅(qū)動(dòng)或經(jīng)驗(yàn)驅(qū)動(dòng)信息結(jié)構(gòu)的應(yīng)用中,導(dǎo)航的內(nèi)容也會(huì)根據(jù)內(nèi)容或經(jīng)驗(yàn)來(lái)進(jìn)行設(shè)計(jì)。例如,在閱讀一本電子書(shū)時(shí),用戶(hù)會(huì)一頁(yè)接一頁(yè)地進(jìn)行閱讀,也會(huì)在目錄中選擇想要閱讀的頁(yè)碼跳轉(zhuǎn)后開(kāi)始閱讀。同樣的,在游戲應(yīng)用中,導(dǎo)航的作用也非常重要。
在某些情況下,在一個(gè)應(yīng)用中結(jié)合多種導(dǎo)航類(lèi)型會(huì)有很好的效果。例如,對(duì)于扁平信息結(jié)構(gòu)中某一分類(lèi)下的內(nèi)容,用分層導(dǎo)航的方式來(lái)顯示可能會(huì)更好。
用戶(hù)應(yīng)該時(shí)刻清楚自己當(dāng)前在應(yīng)用中所處的位置,以及如何前往他們所想到的頁(yè)面。
無(wú)論導(dǎo)航類(lèi)型是否適合你的應(yīng)用結(jié)構(gòu),最重要的是用戶(hù)訪(fǎng)問(wèn)內(nèi)容的路徑應(yīng)該是合理、可預(yù)期和易于尋找的。
UIKit定義了一些標(biāo)準(zhǔn)的UI元素,這些元素即可以構(gòu)建分層或扁平的導(dǎo)航,也可以實(shí)現(xiàn)以?xún)?nèi)容為中心的導(dǎo)航,例如電子書(shū)或者媒體觀(guān)看類(lèi)應(yīng)用。游戲或者其他經(jīng)驗(yàn)驅(qū)動(dòng)的應(yīng)用通常需要一些自定義的元素和行為。
使用導(dǎo)航欄(Navigation Bar)幫助用戶(hù)輕松訪(fǎng)問(wèn)分層內(nèi)容。導(dǎo)航欄的標(biāo)題可以顯示用戶(hù)當(dāng)前所處的層級(jí),而后退按鈕可以回到上一層級(jí)。查看Navigation Bar了解更多。
使用標(biāo)簽欄(Tab Bar)顯示同類(lèi)型的內(nèi)容或功能。標(biāo)簽欄很適合于扁平信息結(jié)構(gòu),可以讓用戶(hù)在分類(lèi)之間隨意切換,而不用在意當(dāng)前所處的位置。查看Tab Bar了解更多。
在應(yīng)用中,如果每屏顯示的都是同類(lèi)項(xiàng)或同類(lèi)頁(yè),可以使用頁(yè)面控件(Page Control)。頁(yè)面控件的優(yōu)點(diǎn)是可以直觀(guān)地告訴用戶(hù)共有多少個(gè)項(xiàng)目或頁(yè)面,以及當(dāng)前所處的位置。查看Page Control了解更多。
一般來(lái)說(shuō),最好能給用戶(hù)到達(dá)每一屏的路徑。如果用戶(hù)需要,就應(yīng)該考慮使用臨時(shí)視圖,例如模態(tài)視圖、動(dòng)作菜單或警告框。查看Modal View、Action Sheet和Alert了解更多。
(譯者注:上文提到的章節(jié)均處在iOS Human Interface Guidelines的第4章,翻譯將在后續(xù)更新中放出,煩請(qǐng)各位耐心等候。若有需要,亦可先參考先前已翻譯的iOS7 UI Elements章節(jié):上,下。)
UIKit同時(shí)還提供了以下相關(guān)控件:
模態(tài)是一個(gè)承載某些連貫操作或內(nèi)容的優(yōu)缺點(diǎn)并存的模式。它可以給用戶(hù)提供一種不脫離主任務(wù)的方式去完成一個(gè)任務(wù)或者獲得信息,但是也會(huì)臨時(shí)性地阻止用戶(hù)對(duì)應(yīng)用的其他部分進(jìn)行交互操作。
理想情況下,用戶(hù)可以與iOS 應(yīng)用進(jìn)行一種非線(xiàn)性的交互,所以,盡可能減少應(yīng)用中的模態(tài)體驗(yàn)是最好的。通常情況,在以下情形下可以考慮使用模態(tài)情境:
保持模態(tài)任務(wù)的簡(jiǎn)單,簡(jiǎn)短和高度聚焦。你肯定不希望用戶(hù)使用模態(tài)視圖時(shí)像使用應(yīng)用中的一個(gè)mini應(yīng)用一樣。如果子任務(wù)過(guò)于復(fù)雜,用戶(hù)會(huì)在進(jìn)入模態(tài)情境時(shí)忽略主要任務(wù)。在設(shè)計(jì)一個(gè)涉及視覺(jué)層次的模態(tài)任務(wù)時(shí)特別要考慮這一點(diǎn),因?yàn)橛脩?hù)有可能迷失并且忘記如何回到之前的操作中去。如果一個(gè)模態(tài)任務(wù)必須包含不同視圖的子任務(wù),確保給用戶(hù)一個(gè)獨(dú)立、清晰的導(dǎo)航路徑,并避免迂回。
始終提供明顯、安全的途徑退出模態(tài)任務(wù)。確保用戶(hù)在退出模態(tài)視圖時(shí)可以預(yù)期操作的結(jié)果。
一個(gè)任務(wù)需要多層級(jí)的模態(tài)視圖時(shí),確保用戶(hù)理解點(diǎn)擊完成按鈕的結(jié)果。點(diǎn)擊一個(gè)低層級(jí)視圖上的完成按鈕是完成這個(gè)視圖中任務(wù)的一部分,還是整個(gè)任務(wù)?因?yàn)榇嬖谶@種困惑的可能性,所以要盡可能避免在下級(jí)視圖中添加完成按鈕。
保證提醒對(duì)話(huà)框的內(nèi)容都是重要且可操作的。提醒對(duì)話(huà)框會(huì)打斷用戶(hù)的體驗(yàn)并且要點(diǎn)擊才會(huì)消失,所以要讓用戶(hù)感到提醒信息是有用的,打斷是有價(jià)值的。
尊重用戶(hù)關(guān)于接收通知的選擇。用戶(hù)會(huì)設(shè)置接收應(yīng)用通知的形式,必須尊重要用戶(hù)的喜好設(shè)置,否則可能觸怒用戶(hù),導(dǎo)致其關(guān)閉所有的推送通知。
用戶(hù)使用點(diǎn)擊、拖拽、捏合等手勢(shì)與iOS設(shè)備進(jìn)行交互。使用手勢(shì)拉近了用戶(hù)和設(shè)備之間的距離,并且增強(qiáng)了直接操縱感。用戶(hù)通常期待手勢(shì)在不同應(yīng)用之間都是通用的。
除了用戶(hù)熟悉的標(biāo)準(zhǔn)手勢(shì),iOS還定義了一些系統(tǒng)范圍內(nèi)的操作,例如呼出控制中心或消息中心。在任意應(yīng)用下都可以使用這些操作。
不要給標(biāo)準(zhǔn)手勢(shì)賦予不同的行為。除非你的應(yīng)用是游戲,否則重新定義標(biāo)準(zhǔn)手勢(shì)會(huì)使用戶(hù)迷惑,且增加使用難度。
不要?jiǎng)?chuàng)建和標(biāo)準(zhǔn)手勢(shì)功能相似的手勢(shì)操作。用戶(hù)已經(jīng)習(xí)慣了標(biāo)準(zhǔn)手勢(shì)的行為,沒(méi)有必要讓用戶(hù)學(xué)習(xí)達(dá)到同樣效果的不同操作。
可以用復(fù)雜手勢(shì)作為完成某任務(wù)的快捷方式,但不能是唯一觸達(dá)方式。最好給用戶(hù)提供一些簡(jiǎn)單、直接的方式完成某操作,即使這種方法需要額外的動(dòng)作。簡(jiǎn)單的手勢(shì)能讓用戶(hù)集中于當(dāng)前的體驗(yàn)和內(nèi)容,而不是交互操作本身。
除非是游戲,否則避免定義新的手勢(shì)。在游戲或其他沉浸式的應(yīng)用中,操作手勢(shì)也是有趣體驗(yàn)的一部分。但是在普通應(yīng)用中,幫助用戶(hù)達(dá)成目標(biāo)要比操作本身重要的多,所以最好使用標(biāo)準(zhǔn)手勢(shì),盡量避免讓用戶(hù)去發(fā)掘和記憶新的操作。
在特定的環(huán)境中,可以考慮使用多指操作。雖然復(fù)雜的操作并不一定適用于所有應(yīng)用,但對(duì)用戶(hù)會(huì)花大量時(shí)間使用的應(yīng)用來(lái)說(shuō)可以豐富體驗(yàn),例如游戲或創(chuàng)建內(nèi)容環(huán)境。但因?yàn)榉菢?biāo)準(zhǔn)手勢(shì)可發(fā)現(xiàn)性差,要盡量少用,并且不要讓這類(lèi)手勢(shì)成為完成任務(wù)的唯一方式。
為了暗示交互性,設(shè)計(jì)時(shí)會(huì)使用很多線(xiàn)索,包括顏色、位置、上下文、表意明確的圖標(biāo)和標(biāo)簽等。并不需要過(guò)于修飾元素來(lái)向用戶(hù)展示可交互性。
一個(gè)關(guān)鍵的顏色可以給用戶(hù)提供很強(qiáng)的視覺(jué)指引,尤其是沒(méi)有冗余的其它顏色時(shí)。為了有對(duì)比,使用藍(lán)色標(biāo)記可交互的元素,并且使用統(tǒng)一的、易識(shí)別的視覺(jué)風(fēng)格。
返回按鈕使用多個(gè)線(xiàn)索指明其可交互性并傳達(dá)其功能:它出現(xiàn)在導(dǎo)航中,顯示了一個(gè)指向后方的圖標(biāo),使用了關(guān)鍵色,顯示了上一級(jí)頁(yè)面的標(biāo)題。
一個(gè)圖標(biāo)或者標(biāo)題提供了清晰的名稱(chēng)指引用戶(hù)點(diǎn)擊它。例如,地圖中的標(biāo)題“立交橋路線(xiàn)”,“定位到這里”,清晰地說(shuō)明了用戶(hù)可做的操作。結(jié)合關(guān)鍵色,就可以省去按鈕邊界或其他多余的修飾。
在內(nèi)容區(qū)域,有必要給按鈕添加邊界或背景。操作條中的按鈕、動(dòng)作表單和提醒對(duì)話(huà)框可以不需要邊界,因?yàn)橛脩?hù)知道在這種區(qū)域中大多數(shù)選項(xiàng)是可交互的。但是在內(nèi)容區(qū)域,按鈕有必要使用邊界或背景將按鈕從其他內(nèi)容中區(qū)分出來(lái)。例如,系統(tǒng)自帶的音樂(lè)、時(shí)鐘、照片和App Store應(yīng)用會(huì)在一些特別的場(chǎng)景中使用這種按鈕。
照片應(yīng)用中給分享按鈕增加了邊框,與其他解釋性文本進(jìn)行了區(qū)分。
時(shí)鐘應(yīng)用在秒表和計(jì)時(shí)頁(yè)面中給按鈕增加背景來(lái)強(qiáng)調(diào)開(kāi)始和暫停按鈕,并且使按鈕在周?chē)膬?nèi)容中更容易點(diǎn)擊。
App Store應(yīng)用中使用有邊界的按鈕,將按鈕和整個(gè)內(nèi)容條區(qū)分開(kāi)來(lái),點(diǎn)擊整條內(nèi)容查看詳細(xì)信息,點(diǎn)擊按鈕進(jìn)行下載安裝。
反饋會(huì)幫助用戶(hù)了解應(yīng)用當(dāng)前在做什么,發(fā)現(xiàn)接下來(lái)可以做什么以及理解動(dòng)作產(chǎn)生的結(jié)果。UIKit提供了很多反饋。
盡可能將狀態(tài)或其他的反饋信息整合到UI中。用戶(hù)不進(jìn)行操作或不跳出當(dāng)前內(nèi)容就能獲得需要的信息是最好的。例如,郵箱應(yīng)用將當(dāng)前郵箱的狀態(tài)顯示工具條上,這樣就不會(huì)影響當(dāng)前內(nèi)容。
避免顯示不必要的警告框。警告框是一種很強(qiáng)的反饋機(jī)制,只有在傳遞非常重要也是理論上可行的信息時(shí)才需要使用它。如果用戶(hù)??吹胶芏嗖皇侵匾畔⒌木婵?,他們很快就會(huì)忽略所有對(duì)話(huà)框提醒。
不管用戶(hù)是點(diǎn)擊控件還是使用鍵盤(pán),輸入信息都會(huì)花費(fèi)時(shí)間和精力。如果發(fā)揮有用的效用前就讓用戶(hù)輸入大量信息會(huì)減弱用戶(hù)繼續(xù)使用的欲望。
讓用戶(hù)更容易地進(jìn)行選擇。例如,使用選擇器或者表格代替純文本,避免要求用戶(hù)打字來(lái)提高選擇效率,降低選擇成本。
適宜地從iOS中獲取信息。設(shè)備上存儲(chǔ)了大量的用戶(hù)信息??梢缘脑?huà),不要讓用戶(hù)提供你可以輕易找到的信息,例如聯(lián)系人或日歷信息。
提供有用的反饋來(lái)平衡用戶(hù)的輸入。付出和回報(bào)的概念可以幫助用戶(hù)感到進(jìn)程在被推進(jìn)。
iOS的用戶(hù)界面中遍布著細(xì)微、精美的動(dòng)畫(huà),它們使得應(yīng)用的體驗(yàn)更具吸引力、更具動(dòng)態(tài)性。適當(dāng)?shù)膭?dòng)畫(huà)可以:
謹(jǐn)慎地增加動(dòng)畫(huà),特別是在那些無(wú)法提供沉浸性體驗(yàn)的應(yīng)用中。看起來(lái)過(guò)多的無(wú)理由的動(dòng)畫(huà)會(huì)阻礙應(yīng)用的流暢性,降低性能,還會(huì)分散用戶(hù)在任務(wù)中的注意力。尤其要說(shuō)的是,要有目的和限制性地使用運(yùn)動(dòng)效果和UI組件中的動(dòng)態(tài)行為,并確保對(duì)結(jié)果進(jìn)行測(cè)試。一旦被合理的使用,這些效果能提高用戶(hù)的理解度和愉悅度;過(guò)度使用他們則會(huì)使應(yīng)用看起來(lái)很迷惑,很難控制。
在合適的時(shí)候,使自定義的動(dòng)畫(huà)與內(nèi)置動(dòng)畫(huà)保持統(tǒng)一。人們習(xí)慣于謹(jǐn)慎添加動(dòng)畫(huà),尤其是在那些不能提供沉浸式用戶(hù)體驗(yàn)的應(yīng)用中。如果應(yīng)用主要關(guān)注一些嚴(yán)肅的任務(wù)或者生產(chǎn)性任務(wù),那么動(dòng)畫(huà)就顯得多余了,還會(huì)無(wú)端打亂應(yīng)用的使用流程,降低應(yīng)用的性能,讓用戶(hù)從當(dāng)前的任務(wù)中分心。
開(kāi)發(fā)者的自定義動(dòng)畫(huà)應(yīng)該切合內(nèi)置iOS應(yīng)用的動(dòng)畫(huà)。用戶(hù)習(xí)慣于內(nèi)置iOS 應(yīng)用使用的精細(xì)動(dòng)畫(huà)。事實(shí)上,用戶(hù)趨向于把視圖之間的平滑轉(zhuǎn)換,對(duì)設(shè)備方向改變的流暢響應(yīng)和基于物理力學(xué)的滾動(dòng)效果看作是iOS體驗(yàn)的一部分。除非你的應(yīng)用能夠給用戶(hù)沉浸式的體驗(yàn)–比如游戲–自定義動(dòng)畫(huà)應(yīng)該可以與內(nèi)置應(yīng)用的動(dòng)畫(huà)相媲美。
使用風(fēng)格類(lèi)型一致的動(dòng)畫(huà)。在應(yīng)用中使用風(fēng)格類(lèi)型一致的動(dòng)畫(huà)非常重要,可以讓用戶(hù)構(gòu)建基于使用應(yīng)用獲得的用戶(hù)體驗(yàn)。
大多數(shù)情況下,恰當(dāng)一點(diǎn)的做法是讓自定義動(dòng)畫(huà)更具現(xiàn)實(shí)性。用戶(hù)樂(lè)意于接受自由的藝術(shù)創(chuàng)作,但當(dāng)你的動(dòng)畫(huà)違背物理定律和自然法則的時(shí)候,他們會(huì)感覺(jué)到非常迷惑。
品牌推廣并不僅僅是在應(yīng)用中展示品牌的顏色和logo。理想狀態(tài)下,你開(kāi)發(fā)的某個(gè)特定品牌的應(yīng)用應(yīng)該通過(guò)創(chuàng)建獨(dú)特的外觀(guān)和感覺(jué)來(lái)為用戶(hù)提供難忘的體驗(yàn)。
在iOS系統(tǒng)之下可以很容易地使用自定義的圖標(biāo)、顏色和字體來(lái)創(chuàng)建區(qū)別于其他應(yīng)用的UI。當(dāng)你進(jìn)行這些元素的設(shè)計(jì)時(shí),牢記以下兩點(diǎn):
當(dāng)你需要讓用戶(hù)意識(shí)到你的品牌時(shí),你應(yīng)該遵循以下幾點(diǎn):
以精致優(yōu)雅不唐突的方式植入品牌的顏色和圖片。用戶(hù)使用你的應(yīng)用來(lái)完成事務(wù)或者進(jìn)行娛樂(lè),他們不希望被強(qiáng)迫著去觀(guān)看廣告。為了獲得最好的用戶(hù)體驗(yàn),你可以通過(guò)字體、顏色和圖像的設(shè)計(jì)來(lái)潛移默化地地提醒用戶(hù)你的品牌身份。
避免遠(yuǎn)離用戶(hù)關(guān)心的內(nèi)容。比如,在屏幕頂部展示一個(gè)二級(jí)欄目,僅用來(lái)展示品牌資產(chǎn),這意味著內(nèi)容沒(méi)有足夠的空間,可以考慮以其他低侵入性的方法無(wú)處不在地展示品牌,比如巧妙地定制屏幕的背景。
抵抗住誘惑,不要把你的logo貫穿整個(gè)應(yīng)用。移動(dòng)設(shè)備的屏幕多數(shù)相當(dāng)小,logo的每一次出現(xiàn)都會(huì)占據(jù)空間而將用戶(hù)與他們想看的內(nèi)容隔離開(kāi)。而且,在應(yīng)用中顯示logo并不能像在網(wǎng)頁(yè)中顯示logo那樣達(dá)到相同的目的:對(duì)于用戶(hù)來(lái)說(shuō)通常會(huì)很容易在不知道網(wǎng)頁(yè)所屬的情況下訪(fǎng)問(wèn)一個(gè)網(wǎng)頁(yè),但卻極少有用戶(hù)會(huì)在完全不看一個(gè)iOS系統(tǒng)中的應(yīng)用圖標(biāo)的情況下就打開(kāi)它。
在iOS系統(tǒng)中,顏色會(huì)用于表征交互,傳遞活性以及提供視覺(jué)連續(xù)性。內(nèi)置的應(yīng)用程序選擇使用那些看起來(lái)更具個(gè)性的、純粹、干凈的顏色,并輔以或亮或暗的背景組合。
如果你要?jiǎng)?chuàng)建多樣的自定義顏色,要確保它們能夠和諧共存。例如,如果你的應(yīng)用的基本風(fēng)格是柔和的色調(diào),你就應(yīng)該創(chuàng)建一個(gè)協(xié)調(diào)的柔和色調(diào)的色板用于整個(gè)應(yīng)用。
注意在不同情境下的顏色對(duì)比。例如,如果在導(dǎo)航欄的背景與欄按鈕標(biāo)題之間沒(méi)有足夠的對(duì)比,按鈕就會(huì)很難被用戶(hù)看到。 依據(jù)經(jīng)驗(yàn)的法則來(lái)說(shuō),需要區(qū)分的顏色必須至少存在50%的亮度差異。(我們)需要將設(shè)備置于不同的光照環(huán)境之中(包括晴朗的室外)來(lái)測(cè)試設(shè)備上的觀(guān)感效果。
提示:一種發(fā)現(xiàn)需要更高對(duì)比度的區(qū)域的方法是降低UI的飽和度并在灰度模式下查看它。如果在灰度版本中你很難區(qū)分可交互與非可交互元素或背景等,你有可能需要增加這些元素之間的對(duì)比度。
當(dāng)你使用自定義的欄顏色時(shí),著重考慮半透明的欄和應(yīng)用內(nèi)容。當(dāng)你需要?jiǎng)?chuàng)建能匹配特別顏色的欄顏色時(shí)(比如一個(gè)已有品牌中的顏色),可能在你獲得你想要的結(jié)果之前,你需要用各種顏色進(jìn)行實(shí)驗(yàn)。欄的顯示將會(huì)同時(shí)受到iOS系統(tǒng)所提供的半透明欄與藏在欄后面的應(yīng)用內(nèi)容的呈現(xiàn)所影響。
API注釋?zhuān)?/strong>使用淺色(TintColor)的屬性值給予欄按鈕顏色,使用欄淺色(BarTintColor)的屬性值為欄本身賦色。欲了解更多關(guān)于欄屬性的內(nèi)容,可參見(jiàn)UINavigationBar Class Reference,,UITabBar Class Reference,UIToolbar Class Reference和UISearchBar Class Reference。(譯者注:相關(guān)章節(jié)翻譯將在后續(xù)更新中放出,煩請(qǐng)各位耐心等候。)
注意顏色的盲區(qū)。多數(shù)色盲的人很難區(qū)分紅色與綠色。需要對(duì)你的應(yīng)用進(jìn)行測(cè)試以確保在其中你沒(méi)有將紅色與綠色作為區(qū)分兩個(gè)不同狀態(tài)或值的唯一方式,一些圖像編輯軟件或工具能夠有效的幫你驗(yàn)證顏色的盲區(qū)。通常意義來(lái)說(shuō),使用多種方式來(lái)表征原色的交互性是非常好的(需要了解更多關(guān)于在iOS系統(tǒng)中表征交互性的信息,詳見(jiàn)Interactive Elements Invite Touch)。
考慮選擇一種基準(zhǔn)色顏色來(lái)表征交互性與狀態(tài)。在內(nèi)置的應(yīng)用中基準(zhǔn)色有比如備忘錄中的黃色與日歷中的紅色等。如果你定義一種用于表征交互和狀態(tài)的基準(zhǔn)色,要確保你的應(yīng)用中的其他顏色不會(huì)與它發(fā)生沖突。
色彩可以向用戶(hù)傳達(dá)信息,但不一定會(huì)以你希望的方式。每個(gè)人眼中的色彩是不一樣的,不同的文化為色彩賦予的意義也是不相同的?;〞r(shí)間來(lái)研究如何使用色彩才可能會(huì)被其他國(guó)家或者文化接受。你要盡可能確定應(yīng)用中運(yùn)用的色彩向用戶(hù)傳達(dá)了恰當(dāng)?shù)男畔ⅰ?/p>
大多數(shù)情況下,不能讓顏色喧賓奪主,讓用戶(hù)分心。除非色彩是應(yīng)用的目的和本質(zhì)所在,通常情況下色彩應(yīng)該用來(lái)從細(xì)微細(xì)節(jié)之處提升用戶(hù)體驗(yàn)。
文字首先必須是清晰可辨的。如果用戶(hù)不能看清楚應(yīng)用中的字詞,那么文字再好看也是沒(méi)是無(wú)意義的。當(dāng)你在你的應(yīng)用中采用Dynamic Type時(shí),你可以實(shí)現(xiàn):
注:如果你是用自定義字體,你仍然可以依據(jù)系統(tǒng)的字號(hào)設(shè)置來(lái)規(guī)劃字體范圍。當(dāng)用戶(hù)改變?cè)O(shè)置時(shí),你的應(yīng)用也必須響應(yīng)式的配合。
就你而言,要采用Dynamic Type需要一些工作。為了學(xué)習(xí)如何使用文字樣式并確保當(dāng)用戶(hù)改變文字型號(hào)設(shè)置時(shí)你的應(yīng)用能夠獲取通知,可以參考Text Stylesin Text Programming Guide for iOS。(譯者注:相關(guān)章節(jié)翻譯將在后續(xù)更新中放出,煩請(qǐng)各位耐心等候。)
文本尺寸的響應(yīng)式變化需要優(yōu)先考慮內(nèi)容。并不是所有的內(nèi)容對(duì)于用戶(hù)都是同等重要的。當(dāng)用戶(hù)選擇更大的文本尺寸時(shí),他們是想要使他們關(guān)注的內(nèi)容更容易閱讀;他們并不總是想要屏幕上的每個(gè)單詞都更大。
例如,當(dāng)用戶(hù)選擇具備更大易用性的文本尺寸時(shí),郵件將會(huì)以更大的尺寸顯示郵件的主題和內(nèi)容,而對(duì)于那些沒(méi)那么重要的信息——如時(shí)間和收件人——?jiǎng)t采用較小的尺寸。
在適當(dāng)?shù)那闆r下,當(dāng)用戶(hù)選擇一個(gè)不同的文本尺寸時(shí)要調(diào)整頁(yè)面布局。例如,當(dāng)用戶(hù)選擇小的文本尺寸時(shí),你可能想將內(nèi)容由一列的布局方式改為兩列。如果你決定根據(jù)不同的文本尺寸調(diào)整布局,你可以選擇針對(duì)尺寸的子集來(lái)實(shí)現(xiàn)——如包含小,中和大尺寸——而不是對(duì)于每個(gè)可能的尺寸都進(jìn)行布局的調(diào)整。
確保一個(gè)自定義字體在不同尺寸下的所有類(lèi)型都具備可讀性。實(shí)現(xiàn)這一效果的方法之一是效仿在不同的文本尺寸下iOS系統(tǒng)呈現(xiàn)字體樣式的一些方法。例如:
通常情況下,應(yīng)用中整體應(yīng)該使用單一字體。多種字體的混雜會(huì)使你的應(yīng)用看上去支離破碎和草率。相反,使用一種字體和少數(shù)樣式。根據(jù)語(yǔ)義用途,使用UIFont類(lèi)的API來(lái)定義不同文本區(qū)域的樣式,比如正文或者標(biāo)題。
每個(gè)應(yīng)用都需要一個(gè)漂亮的圖標(biāo)。用戶(hù)常常會(huì)在看到應(yīng)用圖標(biāo)的時(shí)候便建立起對(duì)應(yīng)用的第一印象,并以此評(píng)判應(yīng)用的品質(zhì)、作用以及可靠性。
以下幾點(diǎn)是你在設(shè)計(jì)應(yīng)用圖標(biāo)時(shí)應(yīng)當(dāng)記住的。當(dāng)你確定要開(kāi)始設(shè)計(jì)時(shí),請(qǐng)參考App Icon來(lái)獲取更詳細(xì)的設(shè)計(jì)規(guī)格與指導(dǎo)。(譯者注:App Icon章節(jié)處在iOS Human Interface Guidelines的Icon and Image Design部分,翻譯將在后續(xù)更新中放出,煩請(qǐng)各位耐心等候。)
iOS提供了一系列小的icon,用以代表各種常見(jiàn)任務(wù)與操作,它們常用在標(biāo)簽欄(Tab Bar)、工具欄(Toolbars)與導(dǎo)航欄(Navigation Bar)中。用戶(hù)通常都已經(jīng)了解這些內(nèi)置圖標(biāo)的含義了,因此可以盡可能的多使用它們。
如果需要自定義動(dòng)作或者內(nèi)容,你也可以設(shè)計(jì)自定義圖標(biāo)。設(shè)計(jì)這些小的線(xiàn)性圖標(biāo)與設(shè)計(jì)應(yīng)用圖標(biāo)有很大的區(qū)別,請(qǐng)參考Bar Button Icons來(lái)了解更多內(nèi)容。(譯者注:Bar Button Icons章節(jié)處在iOS Human Interface Guidelines的Icon and Image Design部分,翻譯將在后續(xù)更新中放出,煩請(qǐng)各位耐心等候)
請(qǐng)注意,你有時(shí)候也可以用文字來(lái)代替工具欄和導(dǎo)航欄的圖標(biāo)。 就像iOS的日歷里面,工具欄上便是使用“今天”、“日歷”和“收件箱”來(lái)代替圖標(biāo)進(jìn)行表意的。
想要決定在工具欄和導(dǎo)航欄中到底是用圖標(biāo)還是文字,可以?xún)?yōu)先考慮一屏中最多會(huì)同時(shí)出現(xiàn)多少個(gè)圖標(biāo)。如果數(shù)量過(guò)多,可能會(huì)讓整個(gè)應(yīng)用看起來(lái)難以理解。使用圖標(biāo)還是文字還取決于屏幕方向是橫向還是縱向,因?yàn)樗揭晥D下通常會(huì)擁有更多的空間,可以承載更多的文字。
iOS應(yīng)用大多數(shù)圖形豐富。無(wú)論是你需要展示用戶(hù)的照片,還是需要?jiǎng)?chuàng)建自定義圖片,以下這些需求都應(yīng)該遵守:
不要使用帶有蘋(píng)果符號(hào)與版權(quán)的圖片。這些符號(hào)都擁有版權(quán),并且產(chǎn)品的設(shè)計(jì)可能會(huì)經(jīng)常改變。
你在應(yīng)用中呈現(xiàn)的每一個(gè)字都是與用戶(hù)進(jìn)行對(duì)話(huà)的一部分。把握這樣的對(duì)話(huà)機(jī)會(huì),為你的用戶(hù)提供清晰的表意與愉悅的體驗(yàn)。
設(shè)置是面向全體用戶(hù)的一個(gè)基礎(chǔ)應(yīng)用,它使用了簡(jiǎn)明扼要的語(yǔ)言來(lái)描述了用戶(hù)可以進(jìn)行的操作。舉個(gè)例子,設(shè)置→勿擾模式(Do Not Disturb)就沒(méi)有使用難以理解的復(fù)雜術(shù)語(yǔ),而是用了簡(jiǎn)單的語(yǔ)言,給用戶(hù)描述了里頭的一系列操作。
保證你使用的術(shù)語(yǔ)是用戶(hù)能理解的。根據(jù)你對(duì)用戶(hù)群的理解來(lái)決定在應(yīng)用中使用什么樣的詞匯。舉個(gè)例子,在一款針對(duì)小白用戶(hù)的應(yīng)用中使用技術(shù)術(shù)語(yǔ)是不合適的,但對(duì)于針對(duì)高端用戶(hù)的應(yīng)用來(lái)說(shuō),使用技術(shù)術(shù)語(yǔ)是很自然的事情。
使用非正式的友好語(yǔ)氣,但不需要太過(guò)低三下四。避免太正式太僵化,或者太過(guò)嘻嘻哈哈,傲慢無(wú)禮。請(qǐng)記住,用戶(hù)可能會(huì)反復(fù)閱讀這些文本,因此有些起初看上去很俏皮的語(yǔ)句,多看幾次之后可能會(huì)顯得幼稚和煩人。
像新聞編輯一般遣詞造句,避免不必要的冗余語(yǔ)句。當(dāng)你的文案足夠簡(jiǎn)明扼要,用戶(hù)就可以很輕松地閱讀和理解它。確定最重要的信息,精煉它并且突出它,讓用戶(hù)不需要讀一大段文字才能了解他們?cè)谡沂裁矗约跋乱徊揭鍪裁础?/p>
給控件加上短標(biāo)簽或者容易理解的圖標(biāo)。讓用戶(hù)只掃一眼就能知道這個(gè)控件是干什么的。
描述時(shí)間時(shí)要注意準(zhǔn)確性。今天和明天這些詞匯確實(shí)顯得比較友好,但有時(shí)候會(huì)讓用戶(hù)費(fèi)解,因?yàn)槟憧赡軟](méi)有辦法確定用戶(hù)當(dāng)前的時(shí)區(qū)和時(shí)間。舉個(gè)例子,假如有一項(xiàng)活動(dòng)會(huì)在半夜12點(diǎn)前開(kāi)始,對(duì)于在同一個(gè)時(shí)區(qū)的用戶(hù)而言,這個(gè)活動(dòng)是在今天開(kāi)始的,但對(duì)于那些在早一點(diǎn)的時(shí)區(qū)里的用戶(hù)而言,這個(gè)活動(dòng)在昨天就已經(jīng)開(kāi)始了。
為你的應(yīng)用寫(xiě)一則漂亮的App Store描述,地把握住這個(gè)與潛在用戶(hù)溝通的絕佳機(jī)會(huì)。除了準(zhǔn)確描述你的應(yīng)用、強(qiáng)調(diào)應(yīng)用的品質(zhì)與亮點(diǎn)以外,你還需要:
與iOS整合,指的是在當(dāng)前平臺(tái)上給用戶(hù)提供一種舒適的、賓至如歸般的體驗(yàn),當(dāng)然這并不意味著我們要把每一個(gè)應(yīng)用做的和內(nèi)置應(yīng)用一模一樣。
最好的與iOS整合的方式便是深刻地了解iOS的主題與核心——這一部分在上文1.1 為iOS而設(shè)計(jì)(Designing for iOS)部分中已有詳細(xì)描述,并尋求出如何在你的應(yīng)用中融合與表達(dá)這種主題。當(dāng)你這么做的時(shí)候,遵循本章中的指引可以幫助你為你的用戶(hù)提供他們想要的體驗(yàn)。
盡可能使用UIKit提供的標(biāo)準(zhǔn)UI元素。多使用標(biāo)準(zhǔn)元素而非自定義元素,你與你的用戶(hù)都將受益:
想要充分地利用標(biāo)準(zhǔn)UI元素的優(yōu)點(diǎn),有一些關(guān)鍵點(diǎn)需要特別注意:
嚴(yán)格遵循每個(gè)UI元素的設(shè)計(jì)規(guī)范。當(dāng)你應(yīng)用中的UI元素的外觀(guān)與功能都是用戶(hù)所熟悉的,他們可以很容易地根據(jù)先前的經(jīng)驗(yàn)來(lái)使用他們,進(jìn)而更好地使用你的應(yīng)用。你可以從這些章節(jié)中找到各種UI元素的設(shè)計(jì)規(guī)范:Bars, Content Views,Controls, Temporary Views.
不要混用不同版本的iOS里的UI元素。你一定不希望讓用戶(hù)覺(jué)得你的UI元素來(lái)自于與當(dāng)前設(shè)備版本不同的iOS系統(tǒng)。
大體來(lái)說(shuō),請(qǐng)避免創(chuàng)造自定義UI元素來(lái)表現(xiàn)標(biāo)準(zhǔn)交互行為。先問(wèn)問(wèn)你自己為什么一定要?jiǎng)?chuàng)建一個(gè)與標(biāo)準(zhǔn)UI元素行為完全相同的自定義元素。如果你只是想改變標(biāo)準(zhǔn)UI元素的外觀(guān),可以考慮使用UIKit外觀(guān)定制API(UIKit appearance customization APIs),或者給元素填充別的顏色。如果你需要定義一個(gè)與標(biāo)準(zhǔn)控件稍有不同的行為,請(qǐng)確保你在改變了這個(gè)UI元素的屬性和行為之后,這個(gè)元素仍然能完成你所希望的操作。
不要用系統(tǒng)自帶的按鈕和圖標(biāo)表達(dá)其他含義。iOS提供了多種可用的按鈕和圖標(biāo)。請(qǐng)確認(rèn)你了解它們的準(zhǔn)確表意;不要單純憑借你看到這些圖標(biāo)樣式的猜測(cè)和理解來(lái)解讀和使用它們。(你可以在Toolbar and Navigation Bar Buttons和Tab Bar Icons中了解到這些按鈕和圖標(biāo)的準(zhǔn)確含義。)
如果你所需要的功能無(wú)法用系統(tǒng)提供的按鈕和圖標(biāo)來(lái)表現(xiàn),你也可以設(shè)計(jì)自定義按鈕。自定義按鈕的設(shè)計(jì)可以參考Bar Button Icons。
如果你的應(yīng)用是沉浸式體驗(yàn),那么創(chuàng)造全新的自定義UI是合理的。因?yàn)槟阍趧?chuàng)造一個(gè)統(tǒng)一的體驗(yàn)環(huán)境,讓用戶(hù)在其中能夠有所期待并探索如何控制應(yīng)用。
iOS應(yīng)用可以幫助用戶(hù)創(chuàng)建和處理文件,但這并不意味著用戶(hù)需要過(guò)分考慮iOS設(shè)備的文件系統(tǒng)如何運(yùn)作。
如果你的應(yīng)用中支持用戶(hù)創(chuàng)建和編輯文檔,那么提供一個(gè)清晰的圖形庫(kù)視圖(document library view)讓用戶(hù)能夠方便地打開(kāi)或者新建文檔是一個(gè)好的做法。理想狀況下,這樣的圖形庫(kù)視圖擁有以下特征:
舉個(gè)例子,Pages應(yīng)用的圖形庫(kù)視圖里面,既展示了用戶(hù)已存在的文檔,也加入了便捷的新建文檔操作。
如果你的應(yīng)用允許用戶(hù)使用在其他應(yīng)用中創(chuàng)建的文檔,你可以通過(guò)模態(tài)文檔選擇視圖控制器(modal document picker view controller)來(lái)幫助用戶(hù)觸達(dá)它們。這個(gè)控制器可以提取用戶(hù)在iCloud中的文檔,還可以通過(guò)文檔提供者擴(kuò)展(Document Provider extensions)來(lái)提取在其它應(yīng)用中創(chuàng)建和儲(chǔ)存的文件。想要了解更多文檔提供者擴(kuò)展的內(nèi)容,可以參考Document Provider Extensions; 想要了解更多文檔提取視圖控制器,請(qǐng)參考Document Picker Programming Guide.
給用戶(hù)足夠的信心,讓他們相信除非主動(dòng)取消或者刪除,他們的成果會(huì)被隨時(shí)妥善保存。如果你的應(yīng)用幫助用戶(hù)創(chuàng)建于管理文檔,不能要求用戶(hù)每次都能及時(shí)保存。無(wú)論是打開(kāi)另一個(gè)文檔或切換應(yīng)用的時(shí)候,iOS應(yīng)用都應(yīng)當(dāng)承擔(dān)起幫助用戶(hù)保存輸入內(nèi)容的責(zé)任。
如果你的應(yīng)用的主要功能不是創(chuàng)造內(nèi)容,但又允許用戶(hù)查看或編輯信息,這種情況下你需要詢(xún)問(wèn)用戶(hù)是否要保存修改。在這種場(chǎng)景下,比較好的做法是提供“編輯”按鈕,點(diǎn)擊后進(jìn)入編輯狀態(tài),同時(shí)編輯按鈕變成“保存”和“取消”按鈕,這種變化可以提示用戶(hù)當(dāng)前處于編輯模式?!氨4妗笨梢员A粜薷膬?nèi)容,“取消”則退出編輯模式。
某些應(yīng)用需要用戶(hù)手動(dòng)安裝或設(shè)置選項(xiàng),但是大部分應(yīng)用不需要如此。一個(gè)好的應(yīng)用可以讓大部分用戶(hù)快速上手,并通過(guò)主界面給用戶(hù)提供便捷的調(diào)整體驗(yàn)的方式。
當(dāng)你的應(yīng)用在默認(rèn)狀態(tài)下就能滿(mǎn)足大部分用戶(hù)的期望,用戶(hù)對(duì)設(shè)置的需求就減少了。如果你需要儲(chǔ)存用戶(hù)的基本資料,可以?xún)?yōu)先向系統(tǒng)請(qǐng)求和拉取相關(guān)信息,而不是上來(lái)就讓用戶(hù)自己填寫(xiě)它。如果你一定要提供用戶(hù)鮮少用到的設(shè)置項(xiàng),請(qǐng)參考App Programming Guide for iOS中的The Setting Bundle部分來(lái)了解如何在代碼中定義它們。
盡可能在主界面提供設(shè)置選項(xiàng)。如果用戶(hù)在進(jìn)行主線(xiàn)任務(wù)時(shí)有可能頻繁改變?cè)O(shè)置,將設(shè)置項(xiàng)放在主UI中會(huì)很方便。如果用戶(hù)只是偶爾才會(huì)用到設(shè)置項(xiàng),那么可以將其放在獨(dú)立的視圖中。
如果應(yīng)用內(nèi)相關(guān)設(shè)置需要在系統(tǒng)設(shè)置中改變,幫助用戶(hù)直接訪(fǎng)問(wèn)系統(tǒng)設(shè)置。尤其是,如果你要用一段文字來(lái)描述如何改變這個(gè)設(shè)置,比如“設(shè)置>隱私>定位服務(wù)”,倒不如直接放置一個(gè)按鈕,點(diǎn)擊后即可到達(dá)設(shè)置中的定位服務(wù)。想要了解如何實(shí)現(xiàn),請(qǐng)參考 Settings Launch URL.
iOS提供了豐富的技術(shù)方式來(lái)支持用戶(hù)完成他們所期望的各種任務(wù)和場(chǎng)景。這意味著在絕大多數(shù)情況下,將系統(tǒng)提供的技術(shù)整合到你的應(yīng)用中,往往比自定義一種新的技術(shù)更為可靠。
某些iOS技術(shù),比如多任務(wù)并行(Multitasking)與語(yǔ)音向?qū)В?span>VoiceOver)等等,是所有應(yīng)用都應(yīng)該包含的系統(tǒng)級(jí)特性。而另外一些技術(shù)是否整合到應(yīng)用中,則取決于應(yīng)用本身的功能性。比如處理門(mén)票和禮品卡的應(yīng)用(Passbook)支持用戶(hù)通過(guò)In-App Purchase完成購(gòu)買(mǎi),展示應(yīng)用內(nèi)置廣告(iAd Rich Media Ads)則可以整合 Game Center,同時(shí)支持iCloud。
藍(lán)藍(lán)設(shè)計(jì)的小編 http://m.bouu.cn