系统指标不尊重Gravity.BOTTOM
System indicators do not respect Gravity.BOTTOM
我使用了演示模拟表盘,并尝试使用 setStatusBarGravity(Gravity.BOTTOM)
让系统指示器出现在底部。似乎没有尊重这种特殊的引力。
setWatchFaceStyle(new WatchFaceStyle.Builder(AnalogWatchFace.this)
.setCardPeekMode(WatchFaceStyle.PEEK_MODE_SHORT)
.setBackgroundVisibility(WatchFaceStyle.BACKGROUND_VISIBILITY_INTERRUPTIVE)
.setShowSystemUiTime(false)
.setStatusBarGravity(Gravity.BOTTOM)
.setHotwordIndicatorGravity(Gravity.BOTTOM)
.build());
通过将其设置为此值,指示器(和 "Ok Google" 热词指示器)会出现在屏幕中央。在圆形设备上,它们完全居中,在方形设备上,它们在左侧垂直居中。
我知道 Android Wear 上的一个问题,即在应用程序重新启动之间指标没有更新,但我已经尝试切换表盘甚至完全重新安装它。我也尝试过使用 setStatusBarGravity()
结合水平对齐和二进制 OR,但方形设备只考虑水平重力。
知道问题出在哪里吗?
看来Gravity.BOTTOM
有点误导;垂直对齐不是在屏幕底部,而是在一些预设位置bottom-most
指标的位置似乎是相对的;在任何可能的偷看卡片上方 和 在热词指示器上方,如果它也设置为 Gravity.BOTTOM
.
我发现如果我设置setHotwordIndicatorGravity(Gravity.CENTER)
,系统指标看起来比将两个指标都设置为Gravity.BOTTOM
略低。这不是理想的,但这是我能得到的最好的。 这似乎不再是 Wear OS 的情况。
我计算了 390px 圆形显示的位置为:
Gravity.TOP
: 8.7%
Gravity.CENTER_VERTICAL
: 39.0%
Gravity.BOTTOM
: 57.4%
我使用了演示模拟表盘,并尝试使用 setStatusBarGravity(Gravity.BOTTOM)
让系统指示器出现在底部。似乎没有尊重这种特殊的引力。
setWatchFaceStyle(new WatchFaceStyle.Builder(AnalogWatchFace.this)
.setCardPeekMode(WatchFaceStyle.PEEK_MODE_SHORT)
.setBackgroundVisibility(WatchFaceStyle.BACKGROUND_VISIBILITY_INTERRUPTIVE)
.setShowSystemUiTime(false)
.setStatusBarGravity(Gravity.BOTTOM)
.setHotwordIndicatorGravity(Gravity.BOTTOM)
.build());
通过将其设置为此值,指示器(和 "Ok Google" 热词指示器)会出现在屏幕中央。在圆形设备上,它们完全居中,在方形设备上,它们在左侧垂直居中。
我知道 Android Wear 上的一个问题,即在应用程序重新启动之间指标没有更新,但我已经尝试切换表盘甚至完全重新安装它。我也尝试过使用 setStatusBarGravity()
结合水平对齐和二进制 OR,但方形设备只考虑水平重力。
知道问题出在哪里吗?
看来Gravity.BOTTOM
有点误导;垂直对齐不是在屏幕底部,而是在一些预设位置bottom-most
指标的位置似乎是相对的;在任何可能的偷看卡片上方 和 在热词指示器上方,如果它也设置为 Gravity.BOTTOM
.
我发现如果我设置 这似乎不再是 Wear OS 的情况。setHotwordIndicatorGravity(Gravity.CENTER)
,系统指标看起来比将两个指标都设置为Gravity.BOTTOM
略低。这不是理想的,但这是我能得到的最好的。
我计算了 390px 圆形显示的位置为:
Gravity.TOP
: 8.7%Gravity.CENTER_VERTICAL
: 39.0%Gravity.BOTTOM
: 57.4%