Flutter 获取系统是否是暗黑模式的方式

有两种方式可以获取到

1. 不使用Context

复制代码
final brightness = SchedulerBinding.instance.platformDispatcher.platformBrightness;
bool isDarkMode = brightness == Brightness.dark;

注意!如果是在程序入口使用,需要加上下面语句

复制代码
WidgetsFlutterBinding.ensureInitialized(); 

2. 使用Context

复制代码
final brightness = MediaQuery.of(context).platformBrightness;
bool isDarkMode = brightness == Brightness.dark;

OR

复制代码
final brightness = View.of(context).platformDispatcher.platformBrightness;
bool isDarkMode = brightness == Brightness.dark;
相关推荐
码林鼠21 小时前
flutter状态管理入门教程-Riverpod
开发语言·javascript·flutter
码林鼠1 天前
flutter网络http请求入门教程-dio
网络协议·flutter·http
码林鼠1 天前
flutter BLoC 单向数据流完整教程
flutter
恋猫de小郭1 天前
Flutter 官方表示:AI 时代代码越来越容易写,为什么还要一套代码库?
android·前端·flutter
喵个咪2 天前
GoWind ShortPlay 拆解:Flutter 沉浸式 Feed 的播放器工程——生命周期、手势状态机与游客降级
前端·flutter·架构
恋猫de小郭3 天前
Flutter 的文字为什么比 SwiftUI 更细?问题主要在 Skia 的 256 项查找表里
android·前端·flutter
好的佩奇4 天前
Dart 之类型系统
flutter·dart
恋猫de小郭4 天前
Dart 3.15 新特性:this 终于支持类型提升了
android·前端·flutter
FungLeo5 天前
成为全栈·Flutter App 篇·主题与可访问性:深浅色、大字号和触控体验
flutter·移动开发·深色模式·可访问性·成为全栈·大字号适配