NULL 窗口插入

sla*_*ars 6 android windowinsets display-cutouts

我正在尝试获得 DisplayCutout 并获得一个

java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“android.view.DisplayCutout android.view.WindowInsets.getDisplayCutout()”

这是我的代码:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
   DisplayCutout displayCutout;
   displayCutout = getWindow().getDecorView().getRootWindowInsets().getDisplayCutout();
   //Logger.e(TAG, "MARGIN " + displayCutout.getSafeInsetTop());
}
Run Code Online (Sandbox Code Playgroud)

小智 5

当且仅当视图已分离时,getRootWindowInsets 返回 null。确保您从正确的上下文中调用它。

  • 我在 onResume() 中调用它,并在 onCreate() 中调用 setContentView,因此附加的活动应该没有问题。 (2认同)