Flutter IOS 前后台切换主题自动变化的问题

BUG 触发条件

  • 设备 IOS 15 模拟器
  • GetX 实现换肤
  • GetMaterialApp 里面配置好 theme和darkTheme
  • 使用GetView和GetController进行开发

此时如果把App前后台切换,使用Obx包括起来的内容会跟谁异常主题变换,未使用Obx的颜色不会变化。

解决路径

首先在获取 lightTheme 和 darkTheme 进行断点,发现在切换到后台的时候会重新获取,猜测它应该是在进入后台的时候对主题进行了保存,但是存储机制可能是错误的。

既然存储异常了,就在进入后台之前再重新设置一遍主题好了;这里使用 WidgetsBinding 进行监听

复制代码
@override
void didChangeAppLifecycleState(AppLifecycleState state) {
  super.didChangeAppLifecycleState(state);
  if(state == AppLifecycleState.paused) {
    /// 重新设置主题
  }
}

重新测试一下,问题解决。

相关推荐
2501_915106321 分钟前
iOS 抓包工具有哪些?不同类型的抓包工具可以做什么
android·ios·小程序·https·uni-app·iphone·webview
消失的旧时光-194323 分钟前
Flutter 中 mixin 的完整认知体系——从原理、范式、架构选择到反模式(工程实战版)
flutter·架构
2501_9462447827 分钟前
Flutter & OpenHarmony OA系统下拉刷新组件开发指南
开发语言·javascript·flutter
kirk_wang1 小时前
Flutter 三方库 simple_circular_progress_bar 在 OHOS 平台的适配实践
flutter·移动开发·跨平台·arkts·鸿蒙
一点晖光3 小时前
ios底部按钮被挡住
前端·ios·微信小程序
AiFlutter12 小时前
二、页面布局(10):瀑布流布局
flutter·低代码·低代码平台·aiflutter·aiflutter 低代码·flutter低代码开发·低代码app开发
chinesegf13 小时前
iTunes Lookup API 规则具体(查包名)
ios
kirk_wang16 小时前
Flutter三方库在OHOS平台适配:firebase_messaging消息推送集成实践
flutter·移动开发·跨平台·arkts·鸿蒙
AiFlutter17 小时前
二、页面布局(09):流式布局
flutter·低代码·低代码平台·aiflutter·aiflutter低代码·低代码平台介绍
2501_9444460020 小时前
Flutter&OpenHarmony状态管理方案详解
开发语言·javascript·flutter