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 失效。
我使用 Android WEAR 1.4 SDK 创建了一个新的表盘,但是当手表进入环境模式时,当前通知具有透明背景,因此文本覆盖在表盘上,看起来很难看。
我下载了一些第三方表盘,发现您可以在微光模式下在通知后面绘制黑色背景。 我怎样才能做到这一点? Android WEAR SDK 没有关于此的任何link
我通过阅读此 post 找到了解决方案的方向:
所以,首先,你需要知道卡片是否可见,因为如果没有卡片可见,那么继续下去就没有意义了。 使用 API 1.3,您可以取回卡片用于绘制自身的 Rect:
Rect card = getPeekCardPosition();
所以从技术上讲,每次绘制 Watchface 时,您都可以检查此 Rect 是否具有宽度和高度。如果有,则表示该卡在屏幕上可见。
下一步,可能在 onDraw() 和下一个用户移除卡片之间,这会触发一个名为:
的事件onPeekCardPositionUpdate()
在这里您可以根据卡片的新尺寸简单地使您的表盘和 re-paint 失效。