如何在我的片段中确定Activity中启用了函数WindowCompat.setDecorFitsSystemWindows(window, false)的边到边有什么想法吗?可以得到WindowCompat.setDecorFitsSystemWindows(window, false)的值吗?
WindowCompat.setDecorFitsSystemWindows(window, false)
qfe3c7zg1#
没有公共API可用于查询此状态。您可能需要在应用中管理此状态,例如在启用边缘到边缘时设置一个标志,然后在片段中检查该标志?或者,您可以尝试从系统UI可见性标志中推断:
val isEdgeToEdgeEnabled = activity?.window?.decorView?.systemUiVisibility?.and(View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION) != 0
字符串但这需要使用反射,这可能是有风险的,因为它可能无法在不同的Android版本或设备上工作,并且可能会在未来的Android更新中中断,所以如果使用自己的标志就足够了,我不建议这样做。
1条答案
按热度按时间qfe3c7zg1#
没有公共API可用于查询此状态。您可能需要在应用中管理此状态,例如在启用边缘到边缘时设置一个标志,然后在片段中检查该标志?
或者,您可以尝试从系统UI可见性标志中推断:
字符串
但这需要使用反射,这可能是有风险的,因为它可能无法在不同的Android版本或设备上工作,并且可能会在未来的Android更新中中断,所以如果使用自己的标志就足够了,我不建议这样做。