我试图显示我的应用程序边缘到边缘,但结果甚至不一致的设备。ViewCompat.setOnApplyWindowInsetsListener
在像素4a/5上被调用,但不在像素3 XL和Essential PH-1上,当我尝试设置填充(有或没有android:fitsSystemWindow="true"
)时,应用程序只是在状态栏后面绘制。我怀疑这是因为缺口(在Pixel 3 XL和Essential PH-1上不支持边对边)。我还用了CoordinatorLayout
,DrawerLayout
,等等,所以这是fitsSystemWindow
。我似乎无论如何都无法使它工作。我看了几次Chris Banes的演讲,但我还是不懂。
这个问题是否与显示截止有关?像素4a/5有截止,而像素3没有。
从类WindowInsets.java:482
* Returns the display cutout if there is one.
* Note: the display cutout will already be consumed during dispatch to *View.onApplyWindowInsets, unless the window has requested a WindowManager.LayoutParams.layoutInDisplayCutoutMode other than never or default.
* Returns:
* the display cutout or null if there is none
* See Also:
* DisplayCutout
public DisplayCutout getDisplayCutout() {
return mDisplayCutout;
}