我正在尝试在带缺口的 Android 设备上占用尽可能多的可用空间。在 Flutter
开发中,有一个名为 SafeArea
的小部件,它会根据设备是否有凹槽自动调整您的 View 。即使在 iOS
开发中,每当我们使用 storyboard
添加 constraints
时,我们都可以根据 SafeArea
添加它。
但是我在原生 Android 开发中找不到类似的东西。
在 v28 的 styles.xml
中,我添加了如下内容
<style name="TPAFTheme" parent="@style/Theme.AppCompat.Light.NoActionBar">
<item name="android:windowNoTitle">true</item>
<item name="android:windowActionBar">false</item>
<item name="android:windowFullscreen">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:windowLayoutInDisplayCutoutMode">shortEdges</item>
<item name="android:windowTranslucentStatus">true</item>
<item name="android:windowTranslucentNavigation">true</item>
</style>
但是是否可以在布局文件本身中检测设备是否有 Notch 并据此调整布局。
我在我的应用程序中使用 Constraintlayout
。由于我的应用程序顶部有图像,因此如果设备顶部有缺口,它就会被裁剪。
任何帮助将不胜感激。
最佳答案
我终于找到了答案。只需在您的 ConstraintLayout 或您正在使用的任何其他顶级布局中使用 android:fitsSystemWindows="true"
关于android - 是否有用于原生 Android 开发的 SafeArea Widget?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58518975/