flutter-解决AppBar背景色为白色带滚动时不生效的bug

作为初学flutter的小白来说,今天在模仿小米商城app的首页appbar的时候,遇到一个奇怪的问题,就是修改AppBar的backgroundColor,在首页上拉滚动时,设置的白色背景色不生效,背景色变成不是淡灰色,其他深色不影响,唯独白色不行,flutter版本:3.16.8。

appbar背景色白色的bug

Dart 复制代码
AppBar(
...
//barOpacity是一个0~1.0的透明度的变量,视频中确实到了1的,不用怀疑
backgroundColor: Colors.white.withOpacity(controller.barOpacity.value), 
elevation: 0,
...)

仔细观察,AppBar的背景色一旦设置为白色且无透明度,下拉的时候就会把白色变成浅灰色,即使不加入渐变透明度的逻辑,固定写死也没用,但是改成其他颜色如绿色红色什么的,又好像没问题,到底是什么问题呢?

这让我不得不怀疑这个是不是受到主题风格的影响,于是我搞老搞去,修改了ThemeData,一脸懵逼就把问题解决了,如下代码:

Dart 复制代码
  theme: ThemeData(
            splashColor: Colors.transparent,
            highlightColor: Colors.transparent,
            //加入colorScheme既可以解决上面的问题
            colorScheme: const ColorScheme.light(
                primary: Colors.white,
                onPrimary: Colors.white,
                onBackground: Colors.white,
                secondary: Colors.white),
          ),
          debugShowCheckedModeBanner: false,
          title: "shop+demo",

如果对你有用,点个赞支持下吧

如果你还有更深的理解,也请回复下你的理解。

相关推荐
吃好喝好玩好睡好6 小时前
基于Flutter与OpenHarmony ArkUI组件互通的Electron桌面应用UI优化方案
flutter·ui·electron
吃好喝好玩好睡好11 小时前
OpenHarmony混合开发实战指南
c语言·python·flutter·vr·visual studio
松☆11 小时前
OpenHarmony + Flutter 混合开发高阶:实现无障碍(Accessibility)与适老化 UI 的深度集成
flutter·ui
Non-existent98712 小时前
Flutter + FastAPI 30天速成计划自用并实践-第6天
flutter·fastapi
克喵的水银蛇12 小时前
Flutter 通用弹窗组件:CommonDialog 一键实现自定义弹窗
flutter
解局易否结局13 小时前
Flutter:重塑跨平台开发的生态与实践
flutter
Android_Trot14 小时前
Flutter android 多渠道配置,多包名、icon、等配置。
android·flutter
淡写成灰14 小时前
Flutter PopScope 返回拦截完整指南
flutter
ujainu14 小时前
Flutter与DevEco Studio协同开发:HarmonyOS应用实战指南
flutter·华为·harmonyos