創作互動式錶面

使用者可以藉由許多方式和錶面互動。舉例來說,使用者可以輕觸錶面瞭解目前播放的歌曲,或查看今天的議程。Wear OS by Google 可以讓錶面接受在錶面指定位置輕觸一下的手勢,前提是該處並無其他會回應此手勢的 UI 元素。

本課程會說明如何透過建構錶面樣式並實作手勢處理方式,藉此實作互動式錶面。

處理輕觸事件

錶面只會收到輕觸事件,這些事件是指使用者把手指放到螢幕上後再舉起手指。如果使用者手指還在觸控螢幕上,卻執行了其他種類的手勢,錶面便會收到取消事件,因為系統會把其他手勢保留給其他功能使用。

如果想處理輕觸手勢,請用 setTapListener() 新增 TapListener。當使用者輕觸錶面時,便會呼叫此內容。

錶面可以收到以下觸控事件類型:

  • TapType.DOWN:使用者將手指放到觸控螢幕上時

  • TapType.UP:使用者從觸控螢幕舉起手指時

  • TapType.CANCEL:系統偵測到使用者正在執行其他非輕觸的手勢時

根據 android.view.ViewConfiguration.getScaledTouchSlop 回傳的值,系統會把 TapType.DOWN 和後續的 TapType.UP 事件驗證為輕觸事件。

如果錶面收到 TapType.CANCEL 事件,則不應該觸發任何動作,因為系統已經處理過該手勢。

WatchFace 範例可以展示設定錶面的最佳做法。