編者按:iOS 10人機(jī)界面設(shè)計(jì)指南中文版也來了源请!今天是第一部分概覽,包括有3個(gè)小節(jié)彻况,主要介紹了iOS 系統(tǒng)的3大原則谁尸、iOS 10 的新特性和iOS界面的基本元素,感謝譯者@喵大神經(jīng)纽甘,一起來學(xué)習(xí)良蛮。
2.交互(Interaction)
2.1 3D 觸摸(3D Touch)
3D
Touch 為觸碰式交互增加了一個(gè)維度。在支持3D Touch
的設(shè)備上悍赢,用戶通過對(duì)觸摸屏施加不同的力度來實(shí)現(xiàn)更多的功能决瞳,譬如觸發(fā)菜單、顯示更多的內(nèi)容或是播放動(dòng)畫泽裳。用戶無需學(xué)習(xí)新的手勢(shì)來使用3D
Touch瞒斩。當(dāng)他們輕壓屏幕并且獲得應(yīng)答的時(shí)候就能立即發(fā)現(xiàn)這一新的交互維度破婆。
2.1.1 主屏幕交互(Home Screen Interaction)
在支持3D Touch的設(shè)備的主屏按壓應(yīng)用圖標(biāo)會(huì)觸發(fā)相應(yīng)的操作視圖涮总。該視圖讓你能夠快速地執(zhí)行常用的應(yīng)用任務(wù)和預(yù)覽有趣的信息,譬如日歷應(yīng)用祷舀,它能夠提供創(chuàng)建新事件的快捷操作瀑梗,同時(shí)顯示日程表上的下一個(gè)事件。了解相關(guān)設(shè)計(jì)指導(dǎo)裳扯,請(qǐng)參閱Home Screen Action和Widgets抛丽。
2.1.2 輕壓(Peek)和重壓(Pop)
輕壓允許用戶使用3D
Touch在當(dāng)前環(huán)境上預(yù)覽一個(gè)臨時(shí)視圖內(nèi)的對(duì)象,譬如一個(gè)頁(yè)面饰豺、鏈接或者文件亿鲜。要想在支持該功能的設(shè)備上實(shí)現(xiàn)預(yù)覽,只需用手指對(duì)應(yīng)用施加一點(diǎn)壓力冤吨,而抬起手指就能退出預(yù)覽蒿柳。要想打開對(duì)象來瀏覽更多的內(nèi)容漩蟆,請(qǐng)更重地按壓屏幕直到對(duì)象放大到填滿屏幕垒探。在一些輕壓視圖上,你可以通過上滑來顯示相應(yīng)的操作按鈕怠李。譬如圾叼,在Safari打開了某個(gè)鏈接的輕壓視圖時(shí)蛤克,你可以通過上滑展開相應(yīng)的操作按鈕——打開鏈接,添加至閱讀列表和復(fù)制鏈接夷蚊。
利用輕壓視圖提供實(shí)時(shí)的构挤,內(nèi)容豐富的預(yù)覽
理想情況下,輕壓視圖為該項(xiàng)提供足夠的信息以補(bǔ)充說明當(dāng)前任務(wù)撬码,或者幫助你決定是否完全地打開該項(xiàng)儿倒。例如,預(yù)覽郵件(Mail)信息中的鏈接呜笑,從而決定是否在Safari瀏覽器中打開或者分享給朋友夫否。輕壓視圖一般被利用于表單視圖中,提供一個(gè)行項(xiàng)的詳細(xì)信息,從而決定是否選擇該項(xiàng)叫胁。
設(shè)計(jì)足夠大的輕壓視圖
設(shè)計(jì)一個(gè)足夠大的輕壓視圖從而保證手指不會(huì)遮擋到內(nèi)容凰慈。確保輕壓視圖能夠提供足夠詳細(xì)的信息,以便用戶決定是否按地更重來完全地打開該項(xiàng)驼鹅。
統(tǒng)一使用輕壓和重壓功能
如果你只在某些地方使用輕壓和重壓微谓,而不在另一些地方使用,用戶就不會(huì)知道到底哪里可以使用這個(gè)功能输钩,而且可能會(huì)認(rèn)為你的應(yīng)用或是他們的設(shè)備出了問題豺型。
允許每個(gè)輕壓視圖都能夠被重壓
雖然輕按視圖能夠提供給用戶他們所需的大部分信息,但如果他們想離開當(dāng)前任務(wù)并轉(zhuǎn)移注意力至該項(xiàng)時(shí)买乃,應(yīng)該允許他們過渡到重壓姻氨。
避免在輕壓視圖中呈現(xiàn)按鈕式元素
如果用戶抬起手指去點(diǎn)擊類似按鈕的元素,輕壓就會(huì)消失剪验。
不要讓同一項(xiàng)具備輕壓和編輯菜單(Edit menu)兩個(gè)功能
當(dāng)一個(gè)項(xiàng)目同時(shí)啟用兩個(gè)功能時(shí)肴焊,不但會(huì)讓用戶感到困惑,也會(huì)讓系統(tǒng)難以判斷用戶目的功戚。了解更多指導(dǎo)娶眷,請(qǐng)參閱Edit Menus。
適當(dāng)時(shí)提供操作按鈕
不是每個(gè)一輕壓都需要操作按鈕啸臀,但這是一個(gè)為常用任務(wù)提供快捷操作的好方式届宠。如果你的應(yīng)用已經(jīng)為項(xiàng)目提供了自定義的點(diǎn)擊并長(zhǎng)按(touch-and-hold)動(dòng)作,那么最好在輕壓里包含同樣的操作乘粒。
避免為打開被輕壓的項(xiàng)目提供操作按鈕
用戶一般都通過更重的按壓來打開他們輕壓的項(xiàng)目豌注。所以,沒有必要再提供一個(gè)明顯的打開按鈕谓厘。
不要讓輕壓成為唯一的執(zhí)行項(xiàng)目操作的操作
并不是所有設(shè)備都支持輕壓和重壓幌羞,甚至有的用戶會(huì)關(guān)閉3D觸摸功能。你的應(yīng)用為這些情況考慮其它觸發(fā)項(xiàng)目操作的方式竟稳。譬如属桦,你的應(yīng)用可以將輕壓的快捷操作映射到一個(gè)視圖中熊痴,該視圖會(huì)在點(diǎn)擊和長(zhǎng)按時(shí)出現(xiàn)。
2.1.3 Live Photos
應(yīng)用可以通過支持Live Photos聂宾,并在照片中加入壓感用來查看動(dòng)態(tài)回憶果善。當(dāng)你按壓它們時(shí),Live Photos死而復(fù)生系谐,通過動(dòng)作和聲音再現(xiàn)拍照的前后時(shí)刻巾陕。了解相關(guān)設(shè)計(jì)指導(dǎo),請(qǐng)參閱Live Photos纪他。
2.2 輔助功能(Accessibility)
iOS 提供了大量的輔助功能來幫助失明鄙煤、失聰以及其他殘疾群體。大部分以UIKit為基礎(chǔ)的應(yīng)用能夠輕易地具有輔助性茶袒,讓更多的用戶來使用你的應(yīng)用梯刚,因?yàn)槟銥樗蟊娞峁┝似降鹊氖褂皿w驗(yàn)。
為圖片薪寓、圖標(biāo)和界面元素提供可選擇的文字標(biāo)簽
可選擇的文字標(biāo)簽在屏幕上是不可見的亡资,但是他們讓VoiceOver能夠通過聲音描述屏幕上有什么,讓失明用戶能夠輕易地使用導(dǎo)航向叉。
相應(yīng)輔助功能的偏好設(shè)置
如果你的應(yīng)用使用UIKit來實(shí)現(xiàn)用戶界面锥腻,文字、界面元素就會(huì)自動(dòng)調(diào)整至相應(yīng)輔助功能的偏好設(shè)置母谎,譬如加粗并且更大的文字瘦黑。你的應(yīng)用也應(yīng)當(dāng)在適當(dāng)?shù)臅r(shí)候檢查并相應(yīng)輔助功能的偏好設(shè)置,譬如當(dāng)減弱動(dòng)態(tài)效果(reduce
motion)的開關(guān)被打開時(shí)销睁。采用自定義字體的應(yīng)用應(yīng)該力圖和系統(tǒng)字體的輔助特性保持一致供璧。
測(cè)試應(yīng)用的輔助功能
除了文字和動(dòng)態(tài)效果的變化存崖,輔助功能選項(xiàng)還能改變對(duì)比度冻记,反轉(zhuǎn)顏色,降低透明度以及更多来惧。為那些需要這些功能的用戶啟用設(shè)置并觀察你的應(yīng)用將會(huì)變成什么樣并且如何運(yùn)作冗栗。
包含隱藏式字幕和口述影像
隱藏式字母幫助失聰以及重聽用戶明白視頻中的對(duì)話和其它音頻內(nèi)容」┎螅口述影像為視覺受損的用戶提供了關(guān)鍵視頻內(nèi)容的口頭解說隅居。
了解更多信息,請(qǐng)查閱iOS Accessibilty和Accessibility Programming Guide for iOS葛虐。
2.3 音頻(Audio)
無論聲音是你應(yīng)用體驗(yàn)的要素或只是一個(gè)點(diǎn)綴胎源,你都應(yīng)該知道用戶對(duì)聲音有什么要求并且滿足他們的期待。
用戶通過音量鍵屿脐、靜音鍵涕蚤、耳機(jī)聲控和屏幕上的音量調(diào)節(jié)滑塊控制聲音宪卿。非常多的第三方配件也包含聲控功能。音頻可以通過內(nèi)部和外部的揚(yáng)聲器万栅、耳機(jī)輸出佑钾,甚至通過支持AirPlay或是藍(lán)牙設(shè)備無線輸出。
靜音:用戶將他們的設(shè)備調(diào)節(jié)至靜音來避免被意外的聲音(比如電話鈴聲和短信提示聲)打擾烦粒。他們也想要關(guān)閉沒有意義的聲音休溶,包括按鍵聲、音效扰她、游戲配樂以及其它音頻反饋兽掰。當(dāng)設(shè)備被設(shè)置成靜音,只能出現(xiàn)被明確被打開的聲音徒役,比如媒體播放中的聲音禾进、鬧鈴和音頻/視頻信息。
音量:無論是使用物理的設(shè)備按鍵或是屏幕上的滑塊廉涕,用戶都希望系統(tǒng)的所有音量都能夠被改變泻云,包括音樂聲和應(yīng)用內(nèi)的音效。但是鈴聲音量是唯一例外狐蜕,它只能在沒有任何聲音播放的情況下被單獨(dú)調(diào)節(jié)宠纯。
耳機(jī):用戶使用耳機(jī)來私密地聽聲音并且能夠釋放他們的雙手。當(dāng)用戶插入耳機(jī)時(shí)层释,他們希望聲音能夠自動(dòng)繼續(xù)播放而不被打斷婆瓜。當(dāng)拔掉耳機(jī)時(shí),他們希望播放能夠立即停止贡羔。
必要時(shí)自動(dòng)調(diào)節(jié)不同層級(jí)的聲音廉白,但不是整體音量
為了達(dá)到更好的混合音效,你的應(yīng)用可以單獨(dú)調(diào)節(jié)不同層級(jí)音頻間的相對(duì)音量乖寒。但是猴蹂,最終的音量輸出應(yīng)該由系統(tǒng)音量決定。
恰當(dāng)?shù)臅r(shí)候允許音頻重選路由(rerouting)
用戶會(huì)經(jīng)常想要選擇一個(gè)不同的音頻輸出設(shè)備楣嘁。比如磅轻,他們會(huì)想要通過客廳的立體音響、車載收音機(jī)或是蘋果電視來聽音樂逐虚。請(qǐng)支持這個(gè)功能除非你有令人信服的理由不這么做聋溜。
使用系統(tǒng)提供的音量視圖來調(diào)節(jié)音量
音量視圖(volume view)是最好的能提供調(diào)節(jié)音量的界面控件。這個(gè)視圖是自定義的叭爱,包含一個(gè)音量調(diào)節(jié)滑塊撮躁,甚至包含一個(gè)用來替音頻輸出重選路由的控件。了解實(shí)現(xiàn)方法买雾,請(qǐng)參閱MPVolumeView Class Reference把曼。
短音和振動(dòng)請(qǐng)使用系統(tǒng)聲音服務(wù)
了解實(shí)現(xiàn)方法缨称,請(qǐng)參閱System Sound Services Reference。
如果聲音對(duì)你的應(yīng)用十分重要請(qǐng)?jiān)O(shè)置音頻類別
不同的音頻類別允許聲音被靜音按鈕靜音祝迂、與其它聲音混響睦尽、或是當(dāng)你的應(yīng)用在后臺(tái)時(shí)播放。根據(jù)類別的含義和當(dāng)前設(shè)備的音頻播放情況來選擇一個(gè)類別型雳,然后將其分配給你音頻對(duì)話(audio sessions)当凡。比如,非必要情況下纠俭,請(qǐng)不要打斷用戶正在收聽的來自其它應(yīng)用的音樂沿量。總的來說冤荆,盡量不要在你的應(yīng)用運(yùn)行時(shí)更改所屬的音頻類別朴则,除非應(yīng)用需要經(jīng)常地錄制然后播放音頻。了解實(shí)現(xiàn)方法钓简,請(qǐng)參閱Audio Session Programming Guide乌妒。
在適當(dāng)時(shí)候繼續(xù)播放被干擾打斷的音頻
正在播放的音頻有時(shí)會(huì)受來自其它應(yīng)用的聲音干擾。暫時(shí)性干擾(比如來電鈴聲)被認(rèn)為是可恢復(fù)的外邓。永久性干擾(比如被Siri打開的播放列表)被視為不可恢復(fù)的撤蚊。當(dāng)一個(gè)可恢復(fù)的干擾出現(xiàn)時(shí),你的應(yīng)用應(yīng)該在干擾結(jié)束時(shí)恢復(fù)音頻播放(假設(shè)音頻在干擾出現(xiàn)之前就已經(jīng)開始播放了)损话。比如侦啸,一個(gè)在播放配樂的游戲和一個(gè)在播放音頻的媒體應(yīng)用都應(yīng)該恢復(fù)聲音的播放。當(dāng)干擾發(fā)生時(shí)應(yīng)用沒有在播放任何音頻丧枪,那么它也就不需要恢復(fù)任何對(duì)象光涂。
讓其它應(yīng)用知道何時(shí)你的應(yīng)用將停止播放暫時(shí)性的音頻
如果你的應(yīng)用可能會(huì)暫時(shí)性地干擾到其它應(yīng)用的音頻,那么就應(yīng)該恰當(dāng)?shù)貥?biāo)明聲音片段拧烦,從而讓其它應(yīng)用知道確切的恢復(fù)時(shí)間忘闻。了解實(shí)現(xiàn)方法,請(qǐng)參閱AVFoundation Framework Reference 中的AVAudioSessionSetActiveOptionNotifyOthersOnDeactivation屎篱。
只有在有意義時(shí)才對(duì)聲音控件作出反應(yīng)
無論你的應(yīng)用在前臺(tái)還是后臺(tái)服赎,用戶都能夠通過應(yīng)用界面以外的東西控制音頻的播放葵蒂,比如在控制中心(Control
Center)中交播,或者耳機(jī)聲控。如果你的應(yīng)用正在一個(gè)明確與聲音相關(guān)的環(huán)境下播放音頻践付,或是連接到一個(gè)支持AirPlay的設(shè)備上秦士,那么對(duì)聲音控件作出反應(yīng)是合理的。但是永高,你的應(yīng)用不應(yīng)該混淆其它應(yīng)用的音頻隧土,因?yàn)樗鼈兛赡軙?huì)在控件被激活時(shí)播放提针。
不要重新定義聲音控件
用戶希望聲音控制在任何應(yīng)用都保持一致性。永遠(yuǎn)不要重新定義聲音控件曹傀。如果你的應(yīng)用不支持某些控件辐脖,那么只需不對(duì)它們作出反應(yīng)即可。
2.4 身份驗(yàn)證(Authentication)
要求用戶進(jìn)行身份驗(yàn)證時(shí)應(yīng)該用有價(jià)值的東西交換皆愉,比如個(gè)人化體驗(yàn)嗜价、獲得更多功能、購(gòu)買內(nèi)容或者同步數(shù)據(jù)幕庐。如果你的應(yīng)用要求身份驗(yàn)證久锥,請(qǐng)保證登陸流程快速簡(jiǎn)單并且低調(diào),這樣就不會(huì)減少應(yīng)用的樂趣异剥。
盡可能地延后登陸
用戶經(jīng)常遺棄應(yīng)用因?yàn)樗麄冊(cè)谧鲆恍┯杏玫氖虑氨粡?qiáng)制登陸瑟由。在強(qiáng)制用戶前給他們一個(gè)愛上你的應(yīng)用的機(jī)會(huì)。在購(gòu)物應(yīng)用內(nèi)冤寿,允許用戶啟動(dòng)應(yīng)用后能馬上瀏覽你的商品歹苦,然后在他們決定購(gòu)買時(shí)才要求登陸。在流媒體應(yīng)用內(nèi)督怜,允許用戶先探索和了解你能夠提供的內(nèi)容暂氯,然后在他們播放時(shí)讓他們登陸。
解釋身份認(rèn)證的優(yōu)勢(shì)以及如何注冊(cè)
如果你的應(yīng)用要求身份認(rèn)證亮蛔,在登陸界面簡(jiǎn)要友好地介紹之所以要登陸的原因及其優(yōu)勢(shì)痴施。并且請(qǐng)牢記不是每個(gè)人在開始使用應(yīng)用時(shí)都擁有一個(gè)賬號(hào)。請(qǐng)確認(rèn)你解釋了如何得到賬號(hào)究流,或者提供一個(gè)簡(jiǎn)單的應(yīng)用內(nèi)的注冊(cè)方式辣吃。
展示適合的鍵盤來減少數(shù)據(jù)輸入
比如,當(dāng)要求填寫一個(gè)郵箱地址時(shí)芬探,請(qǐng)展示包含信息輸入所需快捷鍵的郵件鍵盤窗口神得。
2.5 數(shù)據(jù)輸入(Data Entry)
無論是點(diǎn)擊界面元素還是使用鍵盤,信息輸入都是一個(gè)冗長(zhǎng)的流程偷仿。當(dāng)一個(gè)應(yīng)用在做一些有用的事情前要求用戶一連串的輸入哩簿,進(jìn)而拖慢了流程,那么用戶會(huì)很快感到失望酝静,甚至?xí)氐椎貟仐夁@個(gè)應(yīng)用节榜。
可能時(shí)展示選項(xiàng)
盡可能地提高信息輸入的效率。比如别智,考慮使用選擇器或是列表來替代輸入欄宗苍,因?yàn)閺囊涣刑崆霸O(shè)定好的選項(xiàng)中選擇一個(gè)比打字容易。
可能時(shí)從系統(tǒng)中獲取信息
不要強(qiáng)迫用戶提供那些可以自動(dòng)或是在用戶許可內(nèi)就能獲取的信息,比如聯(lián)系人或是日歷信息讳窟。
提供可靠的默認(rèn)值
盡可能地預(yù)填最可能的信息值让歼。提供一個(gè)可靠的默認(rèn)值縮短了做決定的時(shí)間從而加快了流程。
只有在收集完必需信息之后才能進(jìn)行下一步
在允許“下一步”或“繼續(xù)”按鈕前丽啡,確保所有必要的輸入框都有信息谋右。盡可能地在用戶輸入之后就立馬檢查輸入值,這樣他們就能立即改正补箍。
只要求必要的信息
只有系統(tǒng)運(yùn)行真正必需的信息才使用必填欄倚评。
簡(jiǎn)化值列表的導(dǎo)航
尤其是在列表和選擇器中,必需能夠簡(jiǎn)單地選擇值馏予√煳啵考慮通過將值列表按首字母排序或是其它邏輯排列,從而加快瀏覽和選擇的速度霞丧。
在輸入欄顯示提示以輔助說明
當(dāng)輸入欄沒有其它文字時(shí)呢岗,可以包含占位符文字——比如“郵件”或“密碼”。當(dāng)占位符文字已經(jīng)足夠說明時(shí)不要再單獨(dú)使用標(biāo)簽來描述蛹尝。
2.6 反饋(Feedback)
反饋?zhàn)層脩糁缿?yīng)用現(xiàn)在在做什么后豫,發(fā)現(xiàn)下一步他們應(yīng)該做什么,并且理解操作的結(jié)果突那。
悄悄地在你的界面中加入狀態(tài)或其它類型的反饋
理想中挫酿,用戶能夠在不采取任何操作或是被打擾的情況下得到重要的信息。比如愕难,當(dāng)用戶在郵件應(yīng)用中查看郵時(shí)早龟,狀態(tài)信息被巧妙顯示在工具欄上。這個(gè)信息不會(huì)和屏幕上的主要內(nèi)容搶風(fēng)頭猫缭,但是用戶在任何時(shí)候快速一瞥就能查看葱弟。
避免不必要的警告
警告是一種有威力的反饋機(jī)制,所以它應(yīng)該只被用于傳遞重要的并且最好是需要操作的信息猜丹。如果用戶看到太多包含無關(guān)緊要信息的警告框芝加,他們很快就會(huì)學(xué)會(huì)忽略之后的警告。了解更多幫助射窒,請(qǐng)參閱Alerts藏杖。
2.7 文件處理(File Handling)
用戶在創(chuàng)建、查看和操作文件時(shí)無需思考文件系統(tǒng)脉顿。如果你的應(yīng)用需要運(yùn)行文件時(shí)蝌麸,盡可能地淡化文件處理。
讓用戶相信除非主動(dòng)取消或刪除
文件會(huì)隨時(shí)被保存弊予∠殚梗總而言之,不要讓用戶去即時(shí)保存文件汉柒。反之误褪,在文件被打開、關(guān)閉碾褂,或是跳轉(zhuǎn)至其它應(yīng)用時(shí)兽间,應(yīng)該自動(dòng)定時(shí)地替用戶保存文件。但在某些情況正塌,比如正在編輯一個(gè)已被創(chuàng)建的文件時(shí)嘀略,保存和取消的選項(xiàng)也是有意義的,因?yàn)樗鼈儙椭_認(rèn)何時(shí)編輯的內(nèi)容應(yīng)該被保存乓诽。
不要提供創(chuàng)建本地文件的選項(xiàng)
用戶總是希望他們?nèi)康奈募寄茉谌魏卧O(shè)備上讀取帜羊。如果可能,你的應(yīng)用應(yīng)該支持文件云儲(chǔ)存鸠天,比如通過與iCloud類似的服務(wù)讼育。
設(shè)計(jì)一個(gè)直觀并且圖像化的文件瀏覽界面
理想情況下,使用用戶熟悉的系統(tǒng)文檔選擇器來瀏覽文件稠集。如果你想設(shè)計(jì)一個(gè)自定義的文件瀏覽器奶段,請(qǐng)確保它是直觀且高效的。最好的文件瀏覽器應(yīng)該是高度圖像化的谒出,提供了文檔的視覺再現(xiàn)葡幸。要想加快導(dǎo)航速度鼎天,減少手勢(shì)的使用,并且考慮提供一個(gè)添加新文件的按鈕蹲缠,這樣用戶就無需再到其它地方去創(chuàng)建新文檔。
讓用戶在你的應(yīng)用內(nèi)就能預(yù)覽文件
你可以使用Quick Look 功能讓用戶查看來自Keynote悠垛、Numbers和Pages的內(nèi)容吼砂,以及PDF文檔、圖片以及某些其它格式的文件鼎文,即使你的應(yīng)用并沒有真正打開它們渔肩。請(qǐng)參閱Quick Look。
合適時(shí)拇惋,與其它應(yīng)用共享文件
如果有意義周偎,你的應(yīng)用可以通過document provider extension與其它應(yīng)用共享文件。你的應(yīng)用也可以讓用戶瀏覽和打開來自其它應(yīng)用的文件撑帖。了解實(shí)現(xiàn)方法蓉坎,請(qǐng)查閱Document Picker Programming Guide。
2.8 啟動(dòng)初體驗(yàn)(First Launch Experience)
應(yīng)用的啟動(dòng)時(shí)間是你接觸新用戶并與老用戶再次連接的第一個(gè)時(shí)機(jī)胡嘿。請(qǐng)?jiān)O(shè)計(jì)一個(gè)快速蛉艾、有趣并有教育意義的啟動(dòng)體驗(yàn)。
提供啟動(dòng)畫面
啟動(dòng)畫面在應(yīng)用打開時(shí)出現(xiàn),在加載應(yīng)用初始內(nèi)容的同時(shí)勿侯,讓人感覺你的應(yīng)用的響應(yīng)速度很快拓瞪。因?yàn)檫@個(gè)畫面很快就會(huì)被應(yīng)用的首屏替代,所以它應(yīng)該盡量與首屏相似助琐,除非出現(xiàn)可定位的文字和可交互的元素祭埂。了解更多,請(qǐng)參閱Launch Screen兵钮。
選擇合適的方向啟動(dòng)
如果你的應(yīng)用同時(shí)支持豎屏和橫屏模式蛆橡,那么應(yīng)該以設(shè)備目前的方向啟動(dòng)。如果你的應(yīng)用只在一個(gè)方向運(yùn)行掘譬,那它只能在相同方向啟動(dòng)并在需要時(shí)允許用戶旋轉(zhuǎn)設(shè)備泰演。除非有迫不得已的原因,否則處于橫屏模式的應(yīng)用正確地選擇方向葱轩,無論Home鍵是在左側(cè)還是右側(cè)睦焕。了解更多信息,請(qǐng)參閱Layout酿箭。
快速使用复亏。避免出現(xiàn)延遲用戶使用應(yīng)用時(shí)間的啟動(dòng)畫面、菜單和說明缭嫡。反之缔御,允許用戶快速進(jìn)入應(yīng)用內(nèi)。如果你的應(yīng)用需要教學(xué)或是介紹步驟妇蛀,為用戶提供一個(gè)跳過的選項(xiàng)并且不要對(duì)老用戶展示這些耕突。
提前設(shè)想用戶可能會(huì)需要的幫助
經(jīng)常主動(dòng)地考慮用戶何時(shí)會(huì)遇到麻煩。比如评架,一個(gè)游戲眷茁,能夠在暫停或是角色很難升級(jí)時(shí)提供一些訣竅纵诞。當(dāng)用戶錯(cuò)過啟動(dòng)畫面的內(nèi)容時(shí)上祈,允許他們之后重新觀看教程。
只在教程中展示最關(guān)鍵的內(nèi)容
雖然為新用戶提供引導(dǎo)沒錯(cuò)浙芙,但是教學(xué)不能成為優(yōu)秀的應(yīng)用設(shè)計(jì)的代替品登刺。更重要的是,確保你的應(yīng)用是直觀的嗡呼。如果你的應(yīng)用需要過多的引導(dǎo)纸俭,那么請(qǐng)重新審視你的設(shè)計(jì)。
讓學(xué)習(xí)變得有趣而且易于學(xué)習(xí)
通過操作來學(xué)習(xí)比閱讀一長(zhǎng)串說明來的更有趣和有效南窗。 在上下文環(huán)境中揍很,通過動(dòng)畫和可交互性循序漸進(jìn)地教導(dǎo)郎楼。避免展示看起來似乎可交互的屏幕截圖。
避免在最開始要求用戶設(shè)置信息
用戶期待應(yīng)用馬上工作窒悔。為大多數(shù)人設(shè)計(jì)你的應(yīng)用呜袁,然后讓余下少部分需要不同配置的人自己調(diào)整參數(shù)來滿足他們的需求。盡可能地蛉迹,從設(shè)備設(shè)置和默認(rèn)中或許設(shè)置信息傅寡,或者通過同步服務(wù)放妈,比如iCloud北救。如果應(yīng)用一定要求設(shè)置信息,那么在最初在應(yīng)用內(nèi)提示用戶芜抒,然后允許用戶稍后在應(yīng)用設(shè)置中修改珍策。
避免展示應(yīng)用內(nèi)的接受許可協(xié)議和免責(zé)聲明
在你的應(yīng)用被下載之前直接在蘋果商店展示接受許可協(xié)議和免責(zé)聲明。如果你必須將這些東西放在你的應(yīng)用里宅倒,那么以和諧融入它們攘宙,以避免干擾用戶體驗(yàn)。
在你的應(yīng)用重新啟動(dòng)時(shí)恢復(fù)之前的狀態(tài)
不要讓用戶重新操作來回到之前的應(yīng)用定位拐迁。保存并且復(fù)原應(yīng)用的狀態(tài)蹭劈,這樣用戶就能從他們上次離開的位置繼續(xù)。
不要太快或是太頻繁地要求用戶對(duì)你的應(yīng)用評(píng)分
太快或是太頻繁地要求評(píng)分會(huì)讓用戶惱怒线召,并且減少最終收到的有用反饋的數(shù)量铺韧。為了鼓勵(lì)考慮周到的反饋,在要求評(píng)分之前缓淹,給用戶足夠的時(shí)間直到他們形成對(duì)應(yīng)用的看法哈打。總是提供跳出評(píng)分提示的選項(xiàng)讯壶,并且永遠(yuǎn)都不要強(qiáng)迫用戶對(duì)你的應(yīng)用評(píng)分料仗。
不要鼓勵(lì)重啟
重新啟動(dòng)耗費(fèi)時(shí)間并且讓你的應(yīng)用看起來即不可靠又不可用。如果你的應(yīng)用出現(xiàn)儲(chǔ)存或者其它問題伏蚊,導(dǎo)致它無法運(yùn)行只能系統(tǒng)重啟立轧,那么你應(yīng)該解決這些問題。
2.9 手勢(shì)(Gestures)
用戶通過在觸摸屏上使用手勢(shì)來與iOS設(shè)備交互躏吊。這些手勢(shì)表現(xiàn)了一種親密的人與內(nèi)容之間的聯(lián)系氛改,并且加強(qiáng)了對(duì)屏幕上對(duì)象直接的操作感。用戶普遍地希望一下的標(biāo)準(zhǔn)手勢(shì)能夠在操作系統(tǒng)和每一個(gè)應(yīng)用內(nèi)保持一致颜阐。
點(diǎn)擊(Tap):激活一個(gè)控件或者選擇一個(gè)對(duì)象平窘。
拖曳(Drag):讓一個(gè)元素從一邊移動(dòng)到另一邊,或者在屏幕內(nèi)拖動(dòng)元素凳怨。
滑動(dòng)(Flick):快速滾動(dòng)或是平移
橫掃(Swipe):?jiǎn)沃敢苑祷厣弦豁?yè)瑰艘,呼出分屏視圖控制器(split view controller)中的隱藏視圖是鬼,滑出列表行中的刪除按鈕,或在輕壓中呼出操作列表紫新。在iPad中四指操作用來在應(yīng)用間切換均蜜。
雙擊(Double tap):放大并居中內(nèi)容或圖片,或者縮小已放大過的芒率。
捏合(Pinch):向外張開時(shí)放大囤耳,向內(nèi)捏合時(shí)縮小。
長(zhǎng)按(Touch and hold):在可編輯或者可選文本中操作偶芍,顯示放大視圖用以光標(biāo)定位充择。在某些與集合視圖類似的視圖中操作,進(jìn)入對(duì)象可編輯的狀態(tài)匪蟀。
搖晃(Shake):撤銷或重做
一般使用標(biāo)準(zhǔn)手勢(shì)
用戶已熟悉了標(biāo)準(zhǔn)手勢(shì)椎麦,并不喜歡在做相同事情時(shí)被強(qiáng)迫去學(xué)習(xí)不同的方式。在游戲等沉浸式體驗(yàn)的應(yīng)用中材彪,自定義的手勢(shì)能夠成為體驗(yàn)的有趣要素观挎。但是在其它應(yīng)用中,最好使用標(biāo)準(zhǔn)手勢(shì)段化,這樣用戶就無需花費(fèi)多余的力氣去學(xué)習(xí)和記憶它們嘁捷。
不要禁止系統(tǒng)性的手勢(shì)
除了標(biāo)準(zhǔn)手勢(shì),還有一些手勢(shì)會(huì)觸發(fā)系統(tǒng)性的操作显熏,譬如呼出控制中心或是通知中心雄嚣。在每個(gè)應(yīng)用中,用戶都依賴使用這些手勢(shì)佃延。
避免使用標(biāo)準(zhǔn)手勢(shì)來執(zhí)行非標(biāo)準(zhǔn)的操作
除非你的應(yīng)用時(shí)一個(gè)極具可玩性的游戲现诀,否則重新定義標(biāo)準(zhǔn)手勢(shì)會(huì)變得混論和復(fù)雜。
為基于界面的導(dǎo)航和操作提供補(bǔ)充性的快捷手勢(shì)履肃,而不是取而代之
可能時(shí)仔沿,提供簡(jiǎn)單明顯的方式來導(dǎo)航或是執(zhí)行操作,即使它可能意味著額外的點(diǎn)擊尺棋。非常多的系統(tǒng)應(yīng)用包含一個(gè)提供了清晰可點(diǎn)的返回上一頁(yè)的按鈕的導(dǎo)航欄封锉。但是用戶也能通過在屏幕邊緣右滑來返回。在iPad膘螟,用戶能夠點(diǎn)擊Home鍵退出到主屏幕成福,或是使用四指捏合的手勢(shì)。
使用多指手勢(shì)來加強(qiáng)某些應(yīng)用的體驗(yàn)
雖然涉及多個(gè)手指同時(shí)操作的手勢(shì)不適用于每一個(gè)應(yīng)用荆残,但是他們能夠豐富一些應(yīng)用的體驗(yàn)奴艾,譬如游戲和繪畫應(yīng)用。比如内斯,一個(gè)游戲可能包含多種屏幕上的控件蕴潦,比如同時(shí)操作的的控制桿和發(fā)射鍵像啼。
2.10 加載(Loading)
當(dāng)內(nèi)容在加載時(shí),一片空白靜止的屏幕好像應(yīng)用被凍住了潭苞,讓人感到困惑和失望忽冻,而且很可能讓用戶離開你的應(yīng)用。
明確加載的狀態(tài)
至少此疹,展示一個(gè)活動(dòng)旋轉(zhuǎn)器(activity spinner)來表明有任務(wù)在進(jìn)行中僧诚。更勝一籌的是,顯示明確的進(jìn)度蝗碎,這樣用戶就能知道他們還需等待多久湖笨。
通過教育或娛樂用戶來填充加載的時(shí)間
嘗試展示游戲訣竅、令人愉悅的視頻序列或者有趣的占位圖衍菱。
自定義加載畫面
盡管標(biāo)準(zhǔn)的活動(dòng)指示器還不錯(cuò)赶么,但他們有時(shí)會(huì)感覺是脫離上下文環(huán)境的肩豁。嘗試設(shè)計(jì)符合你的應(yīng)用或游戲的自定義動(dòng)畫和元素脊串,以實(shí)現(xiàn)一個(gè)更沉浸式的體驗(yàn)。
盡快顯示內(nèi)容
不要讓用戶在看到屏幕畫面前去等待內(nèi)容的加載清钥。立馬顯示屏幕畫面琼锋,然后通過占位符、圖片或者動(dòng)畫明確告知用戶哪個(gè)范圍的內(nèi)容還未顯示祟昭。當(dāng)內(nèi)容加載成功之后再把占位元素替代掉缕坎。可能時(shí)篡悟,比如當(dāng)動(dòng)畫在播放時(shí)或是用戶在某個(gè)層級(jí)或菜單導(dǎo)航時(shí)谜叹,在后臺(tái)預(yù)加載接下來要出現(xiàn)的內(nèi)容。
了解更多指導(dǎo)搬葬,請(qǐng)參閱Progress Indicators荷腊。
2.11 模態(tài)(Modality)
模態(tài)突出焦點(diǎn),因?yàn)橛脩糁挥性谕瓿僧?dāng)前的任務(wù)或關(guān)閉一個(gè)信息或視圖之后才能去做其它事情急凰。操作列表女仰、警告框和活動(dòng)視圖都提供了模態(tài)化的體驗(yàn)。當(dāng)屏幕上出現(xiàn)一個(gè)模態(tài)視圖時(shí)抡锈,用戶必須采取一個(gè)決定(點(diǎn)擊按鈕或是其它)才能退出模態(tài)化體驗(yàn)疾忍。在日歷(Calendar)中編輯事件或是在Safari瀏覽器中選擇書簽都是模態(tài)視圖在應(yīng)用中被采用的例子。一個(gè)模態(tài)視圖可以占據(jù)整個(gè)屏幕床三、整個(gè)父視圖(比如浮出層)或者屏幕的一部分一罩。一個(gè)模態(tài)視圖一般都含有“完成”和“取消”按鈕來退出視圖。
△ 警告框
△ 模態(tài)視圖
減少模態(tài)的使用
一般來說撇簿,用戶更喜歡與應(yīng)用進(jìn)行非線性的交互聂渊。只在必須要引起用戶注意時(shí)推汽、某個(gè)任務(wù)必須被完成或是確認(rèn)關(guān)閉時(shí),或保存重要數(shù)據(jù)時(shí)才考慮使用模態(tài)視圖歧沪。
提供一個(gè)明顯并可靠的退出模態(tài)任務(wù)的方式
確保用戶總是知道他們關(guān)閉一個(gè)模態(tài)視圖將導(dǎo)致的結(jié)果歹撒。
保持模態(tài)任務(wù)簡(jiǎn)單、簡(jiǎn)短并且高度集中
不要在你的應(yīng)用中創(chuàng)建一另一個(gè)應(yīng)用诊胞。如果一個(gè)模態(tài)任務(wù)太過復(fù)雜暖夭,用戶在進(jìn)入模態(tài)視圖時(shí)就會(huì)看不到視他們本想執(zhí)行的任務(wù)。當(dāng)創(chuàng)建一個(gè)包含多層級(jí)視圖的模態(tài)任務(wù)時(shí)請(qǐng)格外謹(jǐn)慎撵孤,因?yàn)橛脩艨赡軙?huì)在多個(gè)視圖中迷失并不知道如何返回迈着。如果一個(gè)模態(tài)任務(wù)必須含有次視圖,那么請(qǐng)?zhí)峁﹩渭?jí)的跳轉(zhuǎn)路徑以及清楚的完成路徑邪码。除非完成任務(wù)否則不要使用標(biāo)有“完成”的按鈕裕菠。
如果合適的話,請(qǐng)使用能夠明確說明任務(wù)的標(biāo)題
你也可能在視圖的其它部分提供詳細(xì)描述任務(wù)的文字或是提供指導(dǎo)闭专。
只有在傳達(dá)關(guān)鍵以及需要操作的信息時(shí)才使用警告框
警告框干擾體驗(yàn)奴潘,并且需要單擊才能關(guān)閉,所以必須要讓用戶認(rèn)為這個(gè)打斷是有理由的影钉。了解更多画髓,請(qǐng)參閱Alerts。
尊重用戶的通知偏好設(shè)置
在設(shè)置里平委,用戶明確規(guī)定了他們想要如何地接受來自你應(yīng)用的通知奈虾。遵循這些個(gè)人偏好,這樣他們就不會(huì)想要完全地關(guān)閉來自你應(yīng)用的通知推送廉赔。
不要讓模態(tài)視圖蓋在在浮出層上
除了警告框肉微,任何元素都不應(yīng)該覆蓋在浮出層之上。在極少數(shù)情況下蜡塌,你需要讓模態(tài)視圖在用戶完成浮出層內(nèi)的任務(wù)之后彈出碉纳,那么請(qǐng)先關(guān)閉浮出層再展示模態(tài)視圖。
讓模態(tài)視圖的視覺風(fēng)格與你的應(yīng)用相符
一個(gè)模態(tài)視圖可能包含一個(gè)導(dǎo)航欄岗照。在這種情況下村象,請(qǐng)使用與你應(yīng)用內(nèi)的導(dǎo)航欄一樣的視覺風(fēng)格。
選擇合適的模態(tài)視圖樣式
你可以使用到以下任何一種樣式:
為展示模態(tài)視圖選擇一個(gè)合適的過渡方式
使用與應(yīng)用風(fēng)格相符的過渡方式來加強(qiáng)用戶對(duì)當(dāng)前內(nèi)容轉(zhuǎn)變的認(rèn)知攒至。默認(rèn)的過渡方式讓模態(tài)視圖垂直地從屏幕底部向上滑出厚者,然后在被關(guān)閉時(shí)下滑。彈出樣式的過渡是指當(dāng)前視圖水平滑出迫吐,顯示出模態(tài)視圖库菲,看起來就好像模態(tài)視圖藏在當(dāng)前視圖的背后。當(dāng)模態(tài)視圖被關(guān)閉時(shí)志膀,原先的視圖便重新滑回來熙宇。在你的應(yīng)用內(nèi)容部使用統(tǒng)一的模態(tài)過渡方式鳖擒。
了解更多模態(tài)視圖的實(shí)現(xiàn)方法,請(qǐng)參閱UIViewController Class Reference和UIPresentationController Class Reference烫止。
2.12 導(dǎo)航(Navigation)
用戶往往意識(shí)不到一個(gè)應(yīng)用的導(dǎo)航蒋荚,除非它沒有達(dá)到他們的預(yù)期。你的工作就是實(shí)現(xiàn)一種能夠支持應(yīng)用結(jié)構(gòu)和目的的導(dǎo)航馆蠕,并且讓人們注意到到導(dǎo)航的存在期升。導(dǎo)航應(yīng)該讓人覺得自然和熟悉,并且不應(yīng)該主導(dǎo)界面或者搶走內(nèi)容的風(fēng)頭互躬。在iOS播赁,主要有三種導(dǎo)航結(jié)構(gòu)。
分層導(dǎo)航:
在每屏都做一次選擇吼渡,直到你到達(dá)目標(biāo)位置容为。要想到達(dá)另外的目標(biāo)位置,你必須原路返回一些層級(jí)或是從頭開始重新選擇寺酪。原生應(yīng)用設(shè)置(Settings)和郵件(Mail)就是采用這種導(dǎo)航結(jié)構(gòu)坎背。
扁平導(dǎo)航:
在不同的內(nèi)容類別間切換。原生應(yīng)用音樂(Music)和App Store就是采用這種導(dǎo)航結(jié)構(gòu)房维。
內(nèi)容驅(qū)動(dòng)或是體驗(yàn)驅(qū)動(dòng)式導(dǎo)航:
在內(nèi)容中自由地轉(zhuǎn)換沼瘫,或是內(nèi)容定義導(dǎo)航。游戲咙俩、閱讀以及其它沉浸式應(yīng)用一般都采用這種導(dǎo)航結(jié)構(gòu)。
有的應(yīng)用結(jié)合了多種導(dǎo)航形式湿故。比如阿趁,采用了扁平導(dǎo)航的應(yīng)用也可能在每個(gè)類別之內(nèi)使用層級(jí)導(dǎo)航。
總是提供清晰的路徑
用戶應(yīng)該一直知道他在應(yīng)用的什么位置以及如何去往下一個(gè)目標(biāo)位置坛猪。除了要有清楚的導(dǎo)航形式脖阵,還應(yīng)該確保對(duì)象間的路徑是合理的、符合預(yù)期的并且容追溯的墅茉。一般來說命黔,為用戶提供到達(dá)某一屏的唯一路徑。如果他們需要在非常多的情景下看到某一屏幕的內(nèi)容就斤,那么考慮采用操作列表悍募、警告框、浮出層或是模態(tài)視圖的形式展示這些內(nèi)容洋机。了解更多內(nèi)容坠宴,請(qǐng)參閱Action Sheets,Alerts,Popovers, 和Modality。
設(shè)計(jì)一個(gè)能夠快速簡(jiǎn)單地訪問內(nèi)容的信息結(jié)構(gòu)
合理地組織你的信息結(jié)構(gòu)绷旗,保證它只用最少次數(shù)的點(diǎn)擊喜鼓、橫掃和屏幕間跳轉(zhuǎn)就能訪問相應(yīng)的內(nèi)容副砍。
使用觸摸手勢(shì)來制造流暢感
讓用戶能輕松地在界面內(nèi)跳轉(zhuǎn),而感受不到阻力庄岖。比如豁翎,你可以讓用戶在屏幕邊界右滑,而返回到上一屏隅忿。
使用標(biāo)準(zhǔn)的導(dǎo)航組件
可能時(shí)谨垃,使用標(biāo)準(zhǔn)的導(dǎo)航控件比如頁(yè)面控件、標(biāo)簽欄硼控、分段控件刘陶、表格視圖、集合視圖和拆分視圖牢撼。用戶已經(jīng)熟悉了這些控件匙隔,他們很自然地就知道如何玩轉(zhuǎn)你的應(yīng)用。
使用導(dǎo)航欄訪問分層內(nèi)容
導(dǎo)航欄內(nèi)的標(biāo)題欄能夠說明當(dāng)前的層級(jí)位置熏版,使用返回按鈕能夠輕易地回到上一個(gè)位置纷责。了解更多指導(dǎo),請(qǐng)參閱Navigation Bars撼短。
使用標(biāo)簽欄來展示內(nèi)容或功能相似的類別
標(biāo)簽欄讓用戶能夠快速簡(jiǎn)單地在類別中切換自如再膳,而不受當(dāng)前位置的限制。了解更多指導(dǎo)曲横,請(qǐng)參閱Tab Bars喂柒。
使用多頁(yè)面展示同類型的內(nèi)容時(shí)請(qǐng)使用頁(yè)面控件
頁(yè)面控件能夠清楚地表示總頁(yè)數(shù),以及當(dāng)前頁(yè)的位置禾嫉。天氣(Weather)應(yīng)用就使用了頁(yè)面控件來表示不同地理位置的天氣頁(yè)面灾杰。了解更多指導(dǎo),請(qǐng)參閱Page Controls熙参。
TIP
分段控件和工具欄不具備導(dǎo)航功能艳吠。使用分段控件能夠組織信息放入不同的類別。使用工具欄為當(dāng)前內(nèi)容提供交互控件孽椰。了解這些元素的更多信息昭娩,請(qǐng)參閱Segmented Controls和Toolbars。
2.13 請(qǐng)求許可(Requesting Permission)
用戶必須對(duì)應(yīng)用予以授權(quán)黍匾,應(yīng)用才能獲取用戶的個(gè)人信息栏渺,比如當(dāng)前位置、日歷膀捷、聯(lián)系人信息迈嘹、提醒事項(xiàng)以及照片。雖然用戶在使用獲得這些信息的應(yīng)用時(shí)會(huì)感到方便,但是他們還是希望能夠控制自己的私人數(shù)據(jù)秀仲。比如融痛,用戶希望為他們的照片自動(dòng)標(biāo)上當(dāng)前的地理位置,或是尋找附近的朋友神僵,但是他們又同時(shí)希望能有關(guān)閉這些功能的選項(xiàng)雁刷。
只在應(yīng)用真的需要時(shí)才向用戶請(qǐng)求獲得個(gè)人數(shù)據(jù)
用戶會(huì)質(zhì)疑個(gè)人信息的請(qǐng)求是很自然的,尤其是他們發(fā)現(xiàn)當(dāng)前的請(qǐng)求沒有明顯的必要時(shí)保礼。確保允許請(qǐng)求只在用戶真的在使用某些需要個(gè)人數(shù)據(jù)的功能時(shí)才出現(xiàn)沛励。比如,一個(gè)應(yīng)用只有在激活一個(gè)位置跟蹤的功能時(shí)才請(qǐng)求獲得當(dāng)前的位置炮障。
當(dāng)需求不明顯時(shí)向用戶解釋為什么你的應(yīng)用需要這些信息
你可以在系統(tǒng)提供的允許請(qǐng)求警告框上添加自定義的文本目派。使用明確且有禮貌的文本,這樣用戶就不會(huì)感到有壓力胁赢。使用簡(jiǎn)短文本企蹭,并且使用句子。沒有必要包含你的應(yīng)用名字智末。系統(tǒng)已經(jīng)替你在警告框上說明了應(yīng)用的名字谅摄。
在應(yīng)用一啟動(dòng)時(shí)就請(qǐng)求允許那些對(duì)運(yùn)行你的應(yīng)用至關(guān)重要的信息
如果用戶明確地知道你的應(yīng)用只有獲得這些個(gè)人信息才能運(yùn)行,那么他們就不會(huì)反感系馆。
不必要時(shí)不要請(qǐng)求位置信息
在獲得位置信息之前送漠,檢查系統(tǒng)以查看位置服務(wù)是否已經(jīng)被打開。使用這個(gè)知識(shí)由蘑,可以延遲提醒闽寡,直到使用需要該信息的功能時(shí)才進(jìn)行提醒,甚至可能完全避免提醒纵穿。
學(xué)習(xí)如何實(shí)現(xiàn)定位功能下隧,請(qǐng)參閱Location and Maps Programming Guide。
2.14 設(shè)置(Settings)
有一部分的應(yīng)用可能需要一開始就讓用戶決定設(shè)置或布局選項(xiàng)谓媒,但是大部分應(yīng)用避免或是延遲這么做。成功的應(yīng)用能夠一開始就讓用戶很好地使用何乎,并且同時(shí)提供了一個(gè)便捷的途徑去調(diào)整體驗(yàn)句惯。當(dāng)你的應(yīng)用被設(shè)計(jì)成滿足大部分用戶的需求,你就可以減少他們對(duì)對(duì)設(shè)置的需要支救。
推斷你可以從系統(tǒng)中得到什么
如果你需要關(guān)于用戶抢野、設(shè)備或是環(huán)境的信息,那么盡可能地向系統(tǒng)請(qǐng)求而不是直接詢問用戶各墨。比如指孤,如果你想要知道用戶的郵編來提供本地的選項(xiàng)時(shí),可以向用戶請(qǐng)求獲取他們的當(dāng)前位置。
在你的應(yīng)用中對(duì)配置選項(xiàng)的優(yōu)先排序深思熟慮
應(yīng)用的主屏是一個(gè)放置關(guān)鍵或是常用選項(xiàng)的絕佳位置恃轩。次屏則適合放置只偶爾才更改的選項(xiàng)结洼。
把不經(jīng)常更改的配置選項(xiàng)放到系統(tǒng)設(shè)置里
系統(tǒng)的設(shè)置(Settings)應(yīng)用是更改系統(tǒng)配置的核心地帶,但是用戶必須離開的應(yīng)用才能到達(dá)那里叉跛。因此在你的應(yīng)用中直接調(diào)節(jié)設(shè)置更加方便松忍。如果你的應(yīng)用必須提供很少改動(dòng)的設(shè)置選項(xiàng),請(qǐng)參閱Preferences and Settings Programming Guide中的Implementing an iOS Settings Bundle 部分筷厘。
適當(dāng)時(shí)提供去設(shè)置的快捷路徑
如果你的應(yīng)用包含引導(dǎo)用戶去設(shè)置的文本鸣峭,比如“去設(shè)置>我的應(yīng)用>隱私>定位服務(wù)”,請(qǐng)?zhí)峁┮粋€(gè)能夠自動(dòng)打開該界面的按鈕酥艳。了解如果實(shí)現(xiàn)這個(gè)行為摊溶,請(qǐng)參閱UIApplication Class Reference中的Settings Launch URL部分。
2.15 用辭(Terminology)
每一個(gè)在應(yīng)用中的文字都是與用戶對(duì)話的一部分充石。利用好這個(gè)對(duì)方讓用戶在你的應(yīng)用中感到自在舒適莫换。
使用熟悉易懂的單詞和短語(yǔ)
科技可以讓人感到害怕。避免使用用戶可能不理解的或是技術(shù)術(shù)語(yǔ)赫冬。根據(jù)你對(duì)用戶的了解來決定哪些單詞和短語(yǔ)是合適的浓镜。總的來說劲厌,能夠吸引每個(gè)人的應(yīng)用是不應(yīng)包含深?yuàn)W的技術(shù)語(yǔ)言的膛薛。這類語(yǔ)言比較適合針對(duì)高端或是技術(shù)用戶的應(yīng)用。
保持界面文本的清晰和簡(jiǎn)潔
用戶能夠快速且輕易地理解短而直接的文本补鼻,他們不喜歡在完成任務(wù)時(shí)被強(qiáng)迫去閱讀很長(zhǎng)的文本哄啄。找到最重要的信息,簡(jiǎn)潔地陳述它风范,然后突出地展示它咨跌,這樣用戶就不需要為了知道他們?cè)谡沂裁椿蚴窍乱徊皆撟鍪裁炊喿x太多信息。
避免使用讓人聽起來很傲慢的語(yǔ)言
避免使用“我們”硼婿,“我們的”和“我的”(比如“我們的教程”和“我的鍛煉”)等字段锌半。他們有時(shí)候被理解為無禮或是傲慢的。
盡量使用日常且友好的語(yǔ)氣
一個(gè)日常親近的風(fēng)格就類似你在和別人吃午飯時(shí)聊天的語(yǔ)氣寇漫。偶爾使用簡(jiǎn)寫刊殉,并使用“你”和“你的”來直接與用戶對(duì)話。
請(qǐng)謹(jǐn)慎使用幽默
記得用戶可能會(huì)多次閱讀你界面上的文字州胳,而那些第一次看起來很俏皮的文字可能在多看幾次之后會(huì)顯得惱人记焊。同樣記住在一種文化中的幽默方式可能并不適用于其它文化。
使用相關(guān)且一致的語(yǔ)言和圖像
確保引導(dǎo)在當(dāng)前環(huán)境中總是合適的遍膜。如果某人在使用iPad恩尾,那么久不要給他展示與iPhone相關(guān)的文字和圖片。根據(jù)平臺(tái)選擇使用相符的語(yǔ)言猎物。你在觸摸屏上點(diǎn)擊、滑動(dòng)堤如、橫掃、捏合或者拖曳對(duì)象榔至。你按壓物理按鈕唧取,或者按壓對(duì)3D觸摸作出反應(yīng)的對(duì)象枫弟。你旋轉(zhuǎn)和搖晃設(shè)備淡诗。
提供精確的日期
使用今天袜漩、明天這類友好的詞語(yǔ)是合理的奠货,但是如果你沒有詳細(xì)說明當(dāng)前的位置柔滔,那么這些詞語(yǔ)就會(huì)令人困惑或是顯得不夠精確形真。請(qǐng)考慮一個(gè)在午夜12點(diǎn)前發(fā)生的事件咆霜。在某個(gè)時(shí)區(qū),這個(gè)事件可能發(fā)生在今天脉课。但是在另一個(gè)時(shí)區(qū),同樣的事件可能在昨天就已經(jīng)發(fā)生了戳寸。總而言之庆揩,日期應(yīng)該體現(xiàn)出正在查看事件的用戶所在的時(shí)區(qū)。然而订晌,在某些情況下,比如一個(gè)跟蹤航班狀態(tài)的應(yīng)用內(nèi)锈拨,明確地顯示起飛地區(qū)的日期和時(shí)區(qū)才更加清楚砌庄。
恰當(dāng)?shù)刂赋隹山换サ脑?/b>
用戶應(yīng)該瞥一眼就能知道這個(gè)元素是什么用的奕枢。當(dāng)給按鈕或是其它可交互元素標(biāo)記時(shí)缝彬,使用操作動(dòng)詞扒俯,比如連接夺姑、發(fā)送和添加。
2.16 撤銷和重做(Undo and Redo)
很多的應(yīng)用都允許用戶通過搖晃設(shè)備來撤銷或是重做某個(gè)操作掌猛,比如打字或是刪除盏浙。當(dāng)該撤銷和重做通過搖晃被觸發(fā)時(shí),會(huì)出現(xiàn)一個(gè)提示框荔茬,詢問用戶是要撤銷(重做)操作還是什么都不執(zhí)行废膘。
簡(jiǎn)明扼要地描述將要被撤銷或是重做的操作
撤銷和重做的提示框標(biāo)題會(huì)自動(dòng)地包含“撤銷”或是“重做”這樣的前綴(以及后面的空格)。你需要在前綴后面提供額外的一兩個(gè)詞語(yǔ)用來形容什么會(huì)被撤銷或是重做兔院。比如殖卑,你可以創(chuàng)建一個(gè)提示框標(biāo)題叫做“撤銷命名”或者“重做地址更改”。
如果你已經(jīng)把搖晃手勢(shì)用來撤銷和重做坊萝,那么就不要把它用于其它操作
即使你能通過編程賦予搖晃手勢(shì)不同的意義孵稽,但同時(shí)你也冒著很大的風(fēng)險(xiǎn)使用戶困惑,并讓你的應(yīng)用變得不可預(yù)知十偶。
節(jié)制地使用撤銷和重做按鈕
如果在應(yīng)用中為執(zhí)行相同任務(wù)提供多種途徑便會(huì)讓人困惑菩鲜。如果你的應(yīng)用真的需要專門的撤銷和重做按鈕,那么請(qǐng)使用系統(tǒng)提供的標(biāo)準(zhǔn)按鈕并且把它們放在一個(gè)符合預(yù)期的位置惦积,比如導(dǎo)航欄接校。
只在當(dāng)前情境中執(zhí)行撤銷和重做操作
撤銷和重做必須對(duì)當(dāng)前的(而非之前的)情境有明確直接的影響。