webOS用戶界面基本概念一覽
惠普webOS是專門為移動設備設計的,因此用戶界面的操作是以觸控驅動的。用戶交互每次只作用于一個應用程序,不過webOS提供了一個強大的通知系統,能使應用程序可以巧妙地通知用戶,或是直接搶占用戶當前的應用程序。
webOS的用戶界面主要分為導航、啟動器、卡片視圖、通知和托盤四個主要組成:
導航
webOS的導航操作上基于一些簡單的手勢操作,你首先需要知道這些:
“輕擊”(直接作用于一個對象):通常在一個視圖中會包括一堆對象或是一個列表項,“輕擊”操作可以顯示這個項目中的信息。這可以視為是一個打開操作。另外,“輕擊”操作也可以改變一個對象的狀態,比如在設置一個復選框時,或是選中一個對象。
“后退”(打開的逆向操作):這個操作看上去像是輕擊的逆向操作,比如一個列表項收縮為概要形式。通常“后退”是視圖轉換的逆向操作,比如從一個主視圖切換到子視圖。
“滾動”(快速輕拖):用來在列表間或是視圖間滾動。
除了以上這些操作,你還可以進行pan、縮放、拖放、切換應用程序、切換視圖、搜索、過濾列表以及啟動應用程序。不過使用一個webOS設備,只需要最開始提到的三個手勢。
啟動器
當你啟動一個webOS設備時,屏幕會顯示預選的墻紙圖片,上方顯示狀態欄,下方懸停著快速啟動欄。用這個快速啟動欄可以快速啟動你喜歡的應用,或是打開啟動器以訪問設備上的所有應用程序。在開機后的這個視圖中,你只要直接輸入字符就可以發起一次搜索,可以搜索通信錄、搜索安裝了的程序或是在互聯網中進行搜索。下圖中包含了快速啟動欄和啟動器。
圖:快速啟動欄和啟動器
新打開的程序會代替當前的界面而成為前臺應用,這個應用的視圖會代替墻紙圖片,快速啟動欄也會被隱藏。除了全屏模式(比如視頻播放器或其他程序)外,上方的狀態欄會一直顯示。所有的視圖切換都非常流暢、平滑。
卡片視圖
圖:Email程序的主視圖
上圖是一個Email程序的主視圖,當前處于文件夾視圖。程序中包含了Email應用中的基本UI元素,選擇收件箱的話會打開一個新的卡片,其中包含所選文件夾內的各信息的詳細視圖。上圖中,底部有一個浮動的圖標,這就是菜單項。輕擊該圖標,會顯示一個子菜單或是一個對話框。
大多數情況下,我們每次都只做一件事情,但有些程序需要并行處理很多事情,比如當正在寫一封新郵件時,你可能會想退回收件箱來查看另一封郵件里的信息,或是讀一封剛收到的郵件。
在webOS設備中,郵件草稿有它單獨的卡片。也就是說,你可以同時寫很多郵件草稿,每一個都有自己單獨的卡片,并且它們總會被保存。下圖就是一個Email應用卡片和一封新Email的視圖:
圖:Email應用卡片和新Email的視圖
通知和托盤
當你切換到一個新程序的時候,當前的前臺應用不會被關掉,而會作為后臺程序繼續運行。后臺程序可以獲得事件、讀寫數據、訪問服務、重畫自身,且運行優先級不會比前臺程序低。為了能使后臺程序與用戶通信,Palm提供了一個通知系統,該通知有兩種類型:
彈出框:具有固定高度、至少包含一個可以隱藏該消息的按鈕。
橫幅:一個圖標和一串無樣式的文字字符。
彈出式通知是具有破壞性的,適合來電、日歷提醒、導航通知和其他對時間敏感或緊急的通知。這會強制用戶來處理彈出框,或主動清除它,不過并不需要用戶立即處理它。
下圖展示了橫幅型通知:
圖:橫幅型通知
橫幅通知會在底部的通知欄中緩慢顯示,在顯示之后,橫幅通知還可以留下一個圖標以提醒用戶。下圖就是一個橫幅通知留下提示圖標的例子:
圖:橫幅通知留下提示圖標的例子
上圖指示了音樂播放器處于活動狀態,且有一個即將到時的日歷事件和一些新信息。
用戶可以隨時輕擊通知欄來打開最小化面板。凡是沒有清除的通知,都可以在最小化面板中顯示他們當前的狀態。
最小化面板不僅是所有通知的集合,它還是一個能使應用程序顯示相關信息和狀態的動態視圖。比如:日歷應用總是顯示日歷中的下次事件,即便之前已經通知過了。下圖中,音樂應用顯示了當前歌曲以及播放控制,使用戶可以暫停音樂或是另選一首。
圖:音樂應用顯示了當前歌曲以及播放控制
通知欄和最小化面板管理了那些中斷事件,使得不必打斷你當前的活動,同時讓你及時獲取其他變更信息。這有助于以事件驅動的方式來查看和管理你的世界,同時卡片視圖為你提供了以任務為導向的導航工具。這些組合都讓你在需要的時刻快速跟蹤和訪問你需要的事情。
還有一種程序被稱為“無頭”應用(headless,我實在不知道怎么翻譯才好,這名字太恐怖了),這些應用程序完全是在最小化面板中工作的,這些應用的全部工作目的就是監視和展示信息。比如一個天氣應用程序,只要在最小化面板中顯示指定地理位置的天氣信息就好了,根本不需要一個卡片視圖。
最小化面板的任務就是監視你的世界,以查看到底變更了什么,發生了什么,而這些事情通常又會引發另一些新的事情。
以上內容翻譯自palm開發者網站中開發指南的部分章節,只摘取了重點部分,并沒有全篇翻譯,原文在這里,實際上這是一本叫做 Palm webOS: Developing Applications in JavaScript using the Palm Mojo Framework 的開發書籍內容中的一部分。該書在verycd上有下載。
【編輯推薦】