如何获取有关Galaxy S8和Pixel 2 XL的圆角屏幕角的信息? 我知道Android KitKat Wear API 20中添加了WindowInsets
,因此开发人员可以了解Moto 360上的"爆胎"切口。但它只包含来自每个边的整数偏移量。在我对带有角落的 S8 上的测试中,底部插图始终为 0(当底部导航栏隐藏时)。
我看到Android P Developer预览版为此类添加了DisplayCutout
,带有Region
和Path
。文档说这是针对像 Essential 的缺口这样的切口。新DisplayCutout
是否还包括有关Pixel 2 XL角落的信息?拥有Pixel和开发人员预览版的人可以确认这一点吗?
如果我将应用的大小调整为浮动窗口(即画中画),然后移动窗口,使其上的角或凹口侵入它,我会得到包含新DisplayCutout
信息的onApplyWindowInsets
吗?
关于Galaxy S8,S9等曲面边缘屏幕的信息呢?我想DisplayCutout
没有添加有关此信息的信息,而我需要一个包含此信息的数据库?在P
在2019年年中(?)左右到达S9之前,我们无法确认这一点。
有一些更新:
- 该
Path
已从后续的P
开发者预览版中删除,但 3 年后在S
版开发者预览版中重新出现:DisplayCutout.getCutoutPath()
- Android
R
添加了DisplayCutout.getWaterfallInsets()
,以获取"代表瀑布显示弯曲区域的插图"> S
开发人员预览版还通过WindowInsets.getRoundedCorner(int position)
添加了RoundedCorner
API。它提供每个圆角的中心点和半径。参考: https://developer.android.com/about/versions/12/features#rounded_corner_apis