首頁(yè)技術(shù)文章正文

怎樣設(shè)計(jì)小程序界面?10分鐘教會(huì)你小程序的UI設(shè)計(jì)

更新時(shí)間:2021-10-15 來(lái)源:黑馬程序員 瀏覽量:

在設(shè)計(jì)任何的任務(wù)和流程時(shí),異常狀態(tài)和流程往往容易被忽略,而這些異常場(chǎng)景往往是用戶最為沮喪和需要幫助的時(shí)候,因此需要格外注意異常狀態(tài)的設(shè)計(jì),在出現(xiàn)異常時(shí)予以用戶必要的狀態(tài)提示,并告知解決方案,使其有路可退。
要杜絕異常狀態(tài)下,用戶莫名其妙又無(wú)處可去,停滯在某一個(gè)頁(yè)面的情況。上文中所提到的模態(tài)對(duì)話框和結(jié)果頁(yè)面都可作為異常狀態(tài)的提醒方式。除此之外,在表單頁(yè)面中尤其是表單項(xiàng)較多的頁(yè)面中,還應(yīng)明確指出出錯(cuò)項(xiàng)目,以便用戶修改。

為了避免用戶在微信中使用小程序服務(wù)時(shí),注意力被周圍復(fù)雜環(huán)境干擾,小程序在設(shè)計(jì)時(shí)應(yīng)該注意減少無(wú)關(guān)的設(shè)計(jì)元素對(duì)用戶目標(biāo)的干擾,禮貌地向用戶展示程序提供的服務(wù),友好地引導(dǎo)用戶進(jìn)行操作。

突出重點(diǎn)

每個(gè)頁(yè)面都應(yīng)有明確的重點(diǎn),以便于用戶每進(jìn)入一個(gè)新頁(yè)面的時(shí)候都能快速地理解頁(yè)面內(nèi)容。在確定了重點(diǎn)的前提下,應(yīng)盡量避免頁(yè)面上出現(xiàn)其它與用戶的決策和操作無(wú)關(guān)的干擾因素。


流程明確

為了讓用戶順暢地使用頁(yè)面,在用戶進(jìn)行某一個(gè)操作流程時(shí),應(yīng)避免出現(xiàn)用戶目標(biāo)流程之外的內(nèi)容而打斷用戶。


一旦用戶進(jìn)入我們的小程序頁(yè)面,我們就有責(zé)任和義務(wù)清晰明確地告知用戶身在何處、又可以往何處去,確保用戶在頁(yè)面中游刃有余地穿梭而不迷路,這樣才能為用戶提供安全且愉悅的使用體驗(yàn)。

導(dǎo)航明確,來(lái)去自如

導(dǎo)航是確保用戶在網(wǎng)頁(yè)中瀏覽跳轉(zhuǎn)時(shí)不迷路的最關(guān)鍵因素。導(dǎo)航需要告訴用戶,當(dāng)前在哪,可以去哪,如何回去等問題。微信在小程序內(nèi)現(xiàn)不提供統(tǒng)一導(dǎo)航欄樣式,開發(fā)者可根據(jù)需要自行設(shè)計(jì)小程序首頁(yè)和次級(jí)頁(yè)面界面導(dǎo)航。建議所有的次級(jí)頁(yè)面左上角提供返回上一級(jí)頁(yè)面操作。
此外,微信iOS用戶還可通過(guò)界面邊緣向右滑動(dòng)操作,返回上一級(jí)小程序或微信頁(yè)面。安卓用戶可通過(guò)物理返回鍵達(dá)到同樣目的。

小程序菜單

小程序的所有頁(yè)面,包括小程序內(nèi)嵌網(wǎng)頁(yè)和插件,微信都會(huì)在其右上角放置官方小程序菜單,樣式如圖。開發(fā)者不可對(duì)其內(nèi)容自定義,但可選擇深淺兩種基本配色以適應(yīng)頁(yè)面設(shè)計(jì)風(fēng)格。 官方小程序菜單將放置在界面固定位置,開發(fā)者在設(shè)計(jì)界面時(shí)請(qǐng)預(yù)留出該區(qū)域空間,若需要在此區(qū)域附近放置可交互元素,要特別注意交互事件是否會(huì)沖突,操作是否容易被使用。 
頁(yè)面內(nèi)導(dǎo)航


開發(fā)者可根據(jù)自身功能設(shè)計(jì)需要在頁(yè)面內(nèi)添加自有導(dǎo)航。并保持不同頁(yè)面間導(dǎo)航一致,指向清晰,有路可退。受限于手機(jī)屏幕尺寸的限制,小程序頁(yè)面的導(dǎo)航應(yīng)盡量簡(jiǎn)單。建議開發(fā)者設(shè)計(jì)的自有導(dǎo)航樣式與微信官方小程序菜單樣式保持一定差異,以便區(qū)分。

菜單欄與Tab


開發(fā)者可為小程序頁(yè)面添加標(biāo)簽分頁(yè)(Tab)導(dǎo)航。標(biāo)簽分頁(yè)欄可固定在頁(yè)面頂部或者底部,便于用戶在不同的分頁(yè)間做切換。標(biāo)簽數(shù)量不得少于2個(gè),最多不得超過(guò)5個(gè),為確保點(diǎn)擊區(qū)域,建議標(biāo)簽數(shù)量不超過(guò)4項(xiàng)。一個(gè)頁(yè)面也不應(yīng)出現(xiàn)一組以上的標(biāo)簽分頁(yè)欄。
其中小程序首頁(yè)可選擇微信提供的原生底部標(biāo)簽分頁(yè)樣式,該樣式僅供小程序首頁(yè)使用。開發(fā)時(shí)可自定義圖標(biāo)樣式、標(biāo)簽文案以及文案顏色等,具體設(shè)置項(xiàng)如圖標(biāo)尺寸等參考可參考開發(fā)文檔和WeUI基礎(chǔ)控件庫(kù)。

菜單欄與Tab


頂部標(biāo)簽分頁(yè)欄顏色可自定義。在自定義顏色選擇中,務(wù)必注意保持分頁(yè)欄標(biāo)簽的可用性、可視性和可操作性。

減少等待,反饋及時(shí)
頁(yè)面的過(guò)長(zhǎng)時(shí)間的等待會(huì)引起用戶的不良情緒,使用微信小程序項(xiàng)目提供的技術(shù)已能很大程度縮短等待時(shí)間。即便如此,當(dāng)不可避免的出現(xiàn)了加載和等待的時(shí)候,需要予以及時(shí)的反饋以舒緩用戶等待的不良情緒。

啟動(dòng)頁(yè)加載
小程序啟動(dòng)頁(yè)是小程序在微信內(nèi)一定程度上展現(xiàn)品牌特征的頁(yè)面之一。本頁(yè)面將突出展示小程序品牌特征和加載狀態(tài)。啟動(dòng)頁(yè)除品牌標(biāo)志(Logo)展示外,頁(yè)面上的其他所有元素如加載進(jìn)度指示,均由微信統(tǒng)一提供且不能更改,無(wú)需開發(fā)者開發(fā)。

局部加載反饋
局部加載反饋即只在觸發(fā)加載的頁(yè)面局部進(jìn)行反饋,這樣的反饋機(jī)制更加有針對(duì)性,頁(yè)面跳動(dòng)小,是微信推薦的反饋方式。

全局加載反饋
開發(fā)者可以參考圖中樣式,使用標(biāo)題欄提示加載小程序頁(yè)面內(nèi)容的過(guò)程。

加載反饋?zhàn)⒁馐马?xiàng)

若載入時(shí)間較長(zhǎng),應(yīng)提供取消操作,并使用進(jìn)度條顯示載入的進(jìn)度。
載入過(guò)程中,應(yīng)保持動(dòng)畫效果 ; 無(wú)動(dòng)畫效果的加載很容易讓人產(chǎn)生該界面已經(jīng)卡死的錯(cuò)覺。
不要在同一個(gè)頁(yè)面同時(shí)使用超過(guò)1個(gè)加載動(dòng)畫。

結(jié)果反饋
除了在用戶等待的過(guò)程中需予以及時(shí)反饋外,對(duì)操作的結(jié)果也需要予以明確反饋。根據(jù)實(shí)際情況,可選擇不同的結(jié)果反饋樣式。對(duì)于頁(yè)面局部的操作,可在操作區(qū)域予以直接反饋,對(duì)于頁(yè)面級(jí)操作結(jié)果,可使用彈出式提示、模態(tài)對(duì)話框或結(jié)果頁(yè)面展示。

頁(yè)面局部操作結(jié)果反饋
對(duì)于頁(yè)面局部的操作,可在操作區(qū)域予以直接反饋,例如點(diǎn)擊多選控件前后如下圖。對(duì)于常用控件,微信設(shè)計(jì)中心將提供控件庫(kù),其中的控件都已提供完整操作反饋。

頁(yè)面全局操作結(jié)果——圖標(biāo)型彈出提示

圖標(biāo)型彈出提示適用于輕量級(jí)的成功提示,1.5秒后自動(dòng)消失,并不打斷流程,對(duì)用戶影響較小,適用于不需要強(qiáng)調(diào)的操作提醒,例如成功提示。特別注意該形式不適用于錯(cuò)誤提示,因?yàn)殄e(cuò)誤提示需明確告知用戶,因而不適合使用一閃而過(guò)的彈出式提示。

頁(yè)面全局操作結(jié)果——文字型彈出提示

文字型彈出提示適用于需要輕量化地用文字解釋當(dāng)前狀態(tài)或提醒不嚴(yán)重的錯(cuò)誤。1.5秒后自動(dòng)消失,不打斷流程,對(duì)用戶影響較小。

頁(yè)面全局操作結(jié)果——模態(tài)對(duì)話框

對(duì)于需要用戶明確知曉的操作結(jié)果狀態(tài)可通過(guò)模態(tài)對(duì)話框來(lái)提示,并可附帶下一步操作指引。
頁(yè)面全局操作結(jié)果—結(jié)果頁(yè)

對(duì)于操作結(jié)果已經(jīng)是當(dāng)前流程的終結(jié)的情況,可使用操作結(jié)果頁(yè)來(lái)反饋。這種方式最為強(qiáng)烈和明確的告知用戶操作已經(jīng)完成,并可根據(jù)實(shí)際情況給出下一步操作的指引。
異??煽兀新房赏?/strong>
在設(shè)計(jì)任何的任務(wù)和流程時(shí),異常狀態(tài)和流程往往容易被忽略,而這些異常場(chǎng)景往往是用戶最為沮喪和需要幫助的時(shí)候,因此需要格外注意異常狀態(tài)的設(shè)計(jì),在出現(xiàn)異常時(shí)予以用戶必要的狀態(tài)提示,并告知解決方案,使其有路可退。
要杜絕異常狀態(tài)下,用戶莫名其妙又無(wú)處可去,停滯在某一個(gè)頁(yè)面的情況。上文中所提到的模態(tài)對(duì)話框和結(jié)果頁(yè)面都可作為異常狀態(tài)的提醒方式。除此之外,在表單頁(yè)面中尤其是表單項(xiàng)較多的頁(yè)面中,還應(yīng)明確指出出錯(cuò)項(xiàng)目,以便用戶修改。

異常狀態(tài)——表單出錯(cuò)

表單報(bào)錯(cuò),在表單頂部告知錯(cuò)誤原因,并標(biāo)識(shí)出錯(cuò)誤字段提示用戶修改。

便捷優(yōu)雅

從PC時(shí)代的物理鍵盤鼠標(biāo)到移動(dòng)端時(shí)代手指,雖然輸入設(shè)備極大精簡(jiǎn),但是手指操作的準(zhǔn)確性卻大大不如鍵盤鼠標(biāo)精確。為了適應(yīng)這個(gè)變化,需要開發(fā)者在設(shè)計(jì)過(guò)程中充分利用手機(jī)特性,讓用戶便捷優(yōu)雅的操控界面。
減少輸出
由于手機(jī)鍵盤區(qū)域小且密集,輸入困難的同時(shí)還易引起輸入錯(cuò)誤,因此在設(shè)計(jì)小程序頁(yè)面時(shí)因盡量減少用戶輸入,利用現(xiàn)有接口或其他一些易于操作的選擇控件來(lái)改善用戶輸入的體驗(yàn)。

避免錯(cuò)誤輸入—輸入銀行卡賬戶

例如圖中,在添加銀行卡時(shí),采用攝像頭識(shí)別接口來(lái)幫助用戶輸入。除此之外微信團(tuán)隊(duì)還對(duì)外開放例如地理位置接口等多種微信小程序接口 ,充分利用這些接口將大大提高用戶輸入的效率和準(zhǔn)確性,進(jìn)而優(yōu)化體驗(yàn)。

減少輸入—智能幫助輸入

除了利用接口外,在不得不讓用戶進(jìn)行手動(dòng)輸入時(shí),應(yīng)盡量讓用戶做選擇而不是鍵盤輸入。一方面,回憶易于記憶,讓用戶在有限的選項(xiàng)中做選擇通常來(lái)說(shuō)是容易于完全靠記憶輸入;另一方面,仍然是考慮到手機(jī)鍵盤密集的單鍵輸入極易造成輸入錯(cuò)誤。 例如圖中,在用戶搜索時(shí)提供搜索歷史快捷選項(xiàng)將幫助用戶快速進(jìn)行搜索,而減少或避免不必要是鍵盤輸入。

避免誤操作

因?yàn)樵谑謾C(jī)上我們通過(guò)手指觸摸屏幕來(lái)操控界面,手指的點(diǎn)擊精確度遠(yuǎn)不如鼠標(biāo),因此在設(shè)計(jì)頁(yè)面上需點(diǎn)擊的控件時(shí),需要充分考慮到其熱區(qū)面積,避免由于可點(diǎn)擊區(qū)域過(guò)小或過(guò)于密集而造成誤操作。當(dāng)簡(jiǎn)單的將原本在電腦屏幕上使用的界面不做任何適配直接移植到手機(jī)上時(shí),往往就容易出現(xiàn)這樣的問題。由于手機(jī)屏幕分辨率各不相同,因此最適宜點(diǎn)擊像素尺寸也不完全一致,但換算成物理尺寸后大致是在7mm-9mm之間。在微信提供的標(biāo)準(zhǔn)組件庫(kù)中,各種控件元素均已考慮到了頁(yè)面點(diǎn)擊效果以及不同屏幕的適配,因此再次推薦使用或模仿標(biāo)準(zhǔn)控件尺寸進(jìn)行設(shè)計(jì)。

利用接口提升性能
微信設(shè)計(jì)中心已推出了一套網(wǎng)頁(yè)標(biāo)準(zhǔn)控件庫(kù),包括 sketch設(shè)計(jì)控件庫(kù) 和 Photoshop設(shè)計(jì)控件庫(kù),后續(xù)還將完善小程序組件,這些控件都已充分考慮了移動(dòng)端頁(yè)面的特點(diǎn),能夠保證其在移動(dòng)端頁(yè)面上的可用性和操作性能; 同時(shí)微信開發(fā)團(tuán)隊(duì)也在不斷完善和擴(kuò)充微信小程序接口,并提供微信公共庫(kù),利用這些資源不但能夠?yàn)橛脩籼峁└涌旖莸姆?wù),而且對(duì)頁(yè)面性能的提高有極大作用,無(wú)形之中提升了用戶體驗(yàn)。


除了以上所提到的種種原則,建議接入微信的小程序還應(yīng)該時(shí)刻注意不同頁(yè)面間的統(tǒng)一性和延續(xù)性,在不同的頁(yè)面盡量使用一致的控件和交互方式。
統(tǒng)一的頁(yè)面體驗(yàn)和有延續(xù)性的界面元素都將幫助用最少的學(xué)習(xí)成本達(dá)成使用目標(biāo),減輕頁(yè)面跳動(dòng)所造成的不適感。正因如此,小程序可根據(jù)需要使用微信提供的標(biāo)準(zhǔn)控件,以達(dá)到統(tǒng)一穩(wěn)定的目的。





猜你喜歡:

21個(gè)UI設(shè)計(jì)技巧【UI設(shè)計(jì)干貨】

VR虛擬現(xiàn)實(shí)給UI設(shè)計(jì)帶來(lái)哪些方向?

快速提升UI設(shè)計(jì)水平的簡(jiǎn)單實(shí)用技巧

UI圖標(biāo)設(shè)計(jì)教程:帶你深入了解UI圖標(biāo)設(shè)計(jì)

黑馬程序員UI/UE設(shè)計(jì)師培訓(xùn)課程

分享到:
和我們?cè)诰€交談!