我不喜歡廢話 先上圖 (都是真機測試)
-
安卓的

-
ios的(用ipad演示的)

實現方式
### 我們只需要在生命周期 initState()或者其他的鈎子中調用下面的 方法即可
/// 狀態欄樣式 沉浸式狀態欄
_statusBar([String color]) {
// 白色沉浸式狀態欄顏色 白色文字
SystemUiOverlayStyle light = SystemUiOverlayStyle(
systemNavigationBarColor: Color(0xFF000000),
systemNavigationBarDividerColor: null,
/// 注意安卓要想實現沉浸式的狀態欄 需要底部設置透明色
statusBarColor: Colors.transparent,
systemNavigationBarIconBrightness: Brightness.light,
statusBarIconBrightness: Brightness.light,
statusBarBrightness: Brightness.dark,
);
// 黑色沉浸式狀態欄顏色 黑色文字
SystemUiOverlayStyle dark = SystemUiOverlayStyle(
systemNavigationBarColor: Color(0xFF000000),
systemNavigationBarDividerColor: null,
/// 注意安卓要想實現沉浸式的狀態欄 需要底部設置透明色
statusBarColor: Colors.transparent,
systemNavigationBarIconBrightness: Brightness.light,
statusBarIconBrightness: Brightness.dark,
statusBarBrightness: Brightness.light,
);
// 這個地方你可以去掉三目運算符 直接調用你想要的 效果即可
"while" == color?.trim()
? SystemChrome.setSystemUIOverlayStyle(light)
: SystemChrome.setSystemUIOverlayStyle(dark);
}
ps :這個其實是 依賴余Flutter給我提供的一個 實現類 import 'package:flutter/services.dart';
