如需允许应用完全控制其绘制内容的位置,请按以下设置步骤操作。如果不执行这些步骤,您的应用可能会在系统界面后面绘制黑色或纯色,或者无法与软件键盘同步动画。
- 以 Android 15(API 级别 35)或更高版本为目标平台,以便在 Android 15 及更高版本上强制执行全屏显示。您的应用显示在系统界面后面。您可以通过处理边衬区来调整应用的界面。
- (可选)在
Activity.onCreate()中调用enableEdgeToEdge(),以便您的应用在之前的 Android 版本中实现无边框设计。 在 activity 的
AndroidManifest.xml条目中设置android:windowSoftInputMode="adjustResize"。此设置允许您的应用将软件 IME 的大小作为边衬区接收,这有助于您在 IME 在应用中显示和消失时应用适当的布局和内边距。<!-- In your AndroidManifest.xml file: --> <activity android:name=".ui.MainActivity" android:label="@string/app_name" android:windowSoftInputMode="adjustResize" android:theme="@style/Theme.MyApplication" android:exported="true">处理边衬区,以免关键界面与系统栏或刘海屏重叠。您可以使用标尺、内边距修饰符或边衬区尺寸修饰符来处理边衬区。 某些 Material 组件会自动处理边衬区,或者具有可帮助处理边衬区的参数,例如
Scaffold的PaddingValues参数。选择一种边衬区处理方法。例如,可以使用Scaffold、Modifier.safeDrawingPadding()或Modifier.fitInside(WindowInsetsRulers.SafeDrawing.current),因为这些方法通常可以互换使用。