flutter - flutter : 开启Changed Dark Theme & Light Theme
问题描述
我想在布尔更改时更改主题,我已经更改了布尔的值但是为什么主题没有改变
输出打印
false
true
true
false
false
true
布尔值已经改变,但主题没有改变
这是我的 Synxtax,有什么解决方案或替代方案吗?
main.dart
import 'global.dart' as global;
class MyApp extends StatefulWidget {
@override
_MyAppState createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
@override
Widget build(BuildContext context) {
return MaterialApp(
....
theme: global.modetheme
? ThemeData(primaryColor: Colors.white)
: ThemeData.dark(),
....
);
}
}
全球飞镖
library myproject.global;
bool modetheme = false;
抽屉.dart
import 'global.dart' as global;
SwitchListTile(
value: global.modetheme,
onChanged: (bool value) {
setState(() {
global.modetheme = value;
print(global.modetheme);
});
},
)
解决方案
推荐阅读
- loops - 如何在 VueJS 中迭代 Fetch API 检索到的对象?
- javascript - 为什么我的 firebase 身份验证显示名称没有使用 react js 正确更新?
- python - 我可以在引用模型字段时动态地对 JSON 字段进行批量更新吗?
- google-chrome - 在 Chrome 上捕获的 MediaRecorder 无法在移动设备或 Safari 上播放
- reactjs - react在mui-datatable的一列中创建菜单时,只返回列表最后一个元素的数据
- sql-server - 使用 .NET Framework 4.7.2 Web API 2.0 连接到 SQL Server,而不使用实体框架
- c - fork() 不并行运行
- python - 加载并从它们停止的时期继续运行
- c - 在 Gtk.Entry 的光标处显示 Gtk.Popover
- python - Python:转置和分组数据框