如何解决为什么在notifyListeners() 之后UI 没有更新?
我在 changeTheme() 函数 (themes.dart) 中更改了 Themes._primaryColor。
并且 Themes._primaryColor 成功更新(home_page.dart)。
但背景没有改变。
///themes.dart
void changeTheme(String theme) {
SpClient.sp.setString('theme',theme);
_primaryColor1 = colorMap1[SpClient.sp.getString('theme')];
_primaryColor2 = colorMap2[SpClient.sp.getString('theme')];
print(Provider.of<Themes>(navigatorKey.currentContext,listen: false)._primaryColor2);
notifyListeners();
}
///home_page.dart
appBar: AppBar(
backgroundColor: Themes.primaryColor2,elevation: 0.0,title: Observer(
builder: (_) => Text(
'${homePageStore.basic?.location}',style: TextStyle(fontSize: 25.0,color: Colors.white),),actions: <Widget>[
IconButton(
icon: Image.asset('assets/images/setting.png'),onPressed: () {
onSetting(context);
},)
],
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。