如何获取有关圆形屏幕边角的信息,例如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和开发人员预览的人可以证实这一点吗?
如果我将我的应用程序调整到一个浮动窗口(即画中画),然后移动窗口使一个角落或一个凹口侵入它,我会得到onApplyWindowInsets
新的DisplayCutout
信息?
有关Galaxy S8,S9等曲面边缘屏幕的信息怎么样?我猜DisplayCutout
没有添加关于此的信息,我需要一个包含此信息的数据库?我们将无法在P
到达S9,2019年中期(?)左右时确认这一点。
答案 0 :(得分:0)
有一些更新:
Path
已从后续 P
开发者预览版中删除,但 3 年后在 S
开发者预览版中重新出现:DisplayCutout.getCutoutPath()
R
添加了 DisplayCutout.getWaterfallInsets()
以获取“代表瀑布显示弯曲区域的插图”S
Developer Preview 还通过 WindowInsets.getRoundedCorner(int position)
添加了 RoundedCorner
API。它提供了每个圆角的中心点和半径。参考:https://developer.android.com/about/versions/12/features#rounded_corner_apis