Android WEAR,环境模式下的通知背景

Android WEAR, Notification background while in Ambient mode

我使用 Android WEAR 1.4 SDK 创建了一个新的表盘,但是当手表进入环境模式时,当前通知具有透明背景,因此文本覆盖在表盘上,看起来很难看。

我下载了一些第三方表盘,发现您可以在微光模式下在通知后面绘制黑色背景。 我怎样才能做到这一点? Android WEAR SDK 没有关于此的任何link

我通过阅读此 post 找到了解决方案的方向:

所以,首先,你需要知道卡片是否可见,因为如果没有卡片可见,那么继续下去就没有意义了。 使用 API 1.3,您可以取回卡片用于绘制自身的 Rect

Rect card = getPeekCardPosition();

所以从技术上讲,每次绘制 Watchface 时,您都可以检查此 Rect 是否具有宽度和高度。如果有,则表示该卡在屏幕上可见。

下一步,可能在 onDraw() 和下一个用户移除卡片之间,这会触发一个名为:

的事件
onPeekCardPositionUpdate()

在这里您可以根据卡片的新尺寸简单地使您的表盘和 re-paint 失效。