Flutter中如何设置状态栏图标颜色?

问题描述 投票:0回答:2

我正在开发 flutter 项目,我想为状态栏图标提供白色。所以我使用了以下代码行,它在启动屏幕上给了我结果

颤动代码:

SystemChrome.setSystemUIOverlayStyle(const SystemUiOverlayStyle(
  systemNavigationBarColor:  Color(0xffdedede),
  systemNavigationBarIconBrightness: Brightness.dark,
  systemNavigationBarDividerColor: null,
  statusBarColor: Color(0xffbf0000),
  statusBarIconBrightness: Brightness.light,
  statusBarBrightness: Brightness.dark,
  ));

但是:当应用程序导航到主屏幕时,状态栏图标颜色变回黑色,我不知道该行代码中缺少什么。所以我就被困住了

flutter flutter-layout icons flutter-dependencies
2个回答
2
投票

状态栏图标的颜色取决于应用栏的颜色。您可以尝试在主屏幕上编辑 AppBar 的

systemOverlayStyle
吗?

https://api.flutter.dev/flutter/material/AppBar/systemOverlayStyle.html


0
投票

如果您只想将其放在整个应用程序中,您可以将其放在顶级 main() 函数中,如下所示:

import 'package:flutter/services.dart';

void main() {
  SystemChrome.setSystemUIOverlayStyle(const SystemUiOverlayStyle(
      statusBarBrightness: Brightness.light,
      statusBarIconBrightness: Brightness.light
  ));
  runApp(const MyApp());
}

可以在运行时更改它。

此代码已在 iOS 15.2Flutter 3.10.6

进行了测试
© www.soinside.com 2019 - 2024. All rights reserved.