flutter android设置沉浸式导航栏

145 阅读1分钟
  1. 在android的AndroidManifest.xml设置更改权限 android/app/src/main/AndroidManifest.xml
<uses-permission android:name="android.permission.SYSTEM_UI" />
  1. main.dart

这一步添加后,启动项目,再注释会发现,不设置也可以生效,但是重新启动项目会发现删除后并没有生效,要注意!!!!

SystemChrome.setEnabledSystemUIMode(SystemUiMode.edgeToEdge);
SystemChrome.setSystemUIOverlayStyle(
    const SystemUiOverlayStyle(
        systemNavigationBarColor: Colors.transparent,
    )
);
  1. 在根页面设置
AnnotatedRegion<SystemUiOverlayStyle>(
    value: const SystemUiOverlayStyle(systemNavigationBarColor: Colors.transparent),
    child: 根页面widget,
),

注意!!! 在根页面设置之后,如果后续其他页面有单独设置导航栏样式会覆盖,适用于所有页面通用的情况下设置。