Flutter:不使用 AppBar 时如何更改 Android 和 iOS 上的状态栏文本颜色

Fel*_*cia 4 android ios flutter

我是 Flutter 新手,我用谷歌搜索了这个问题,但发现没有答案适合我。

我的代码如下所示,状态栏颜色效果很好,现在是白色的。但是Android上的状态栏文字颜色也是白色的,看起来Brightness.dark根本不起作用......

您的回答将不胜感激,谢谢!<3

Widget build(BuildContext context) {

 SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle.dark.copyWith(
   statusBarColor: Colors.white, // Color for Android
   statusBarBrightness: Brightness.dark // Dark == white status bar -- for IOS.
 ));

 return Scaffold(
   body: Container(
     ...
}
Run Code Online (Sandbox Code Playgroud)

van*_*goh 5

根据SystemUiOverLayStyle API 文档,Android 上状态栏的文本颜色无法更改,statusBarBrightness只有 iOS 才支持。

SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle(
      statusBarColor: Colors.white,               // Only honored in Android M and above
      statusBarIconBrightness: Brightness.dark   // Only honored in Android M and above
      statusBarBrightness: Brightness.light,      // Only honored in iOS
));
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助!干杯