当前位置: 首页 > news >正文

域名可以做网站吗昆明建设网站哪家好

域名可以做网站吗,昆明建设网站哪家好,公司网站怎么突然多了好多友情链接如何删除,青海网站建设哪家强效果 实现 图片资源采用boss包中的动画webp资源。Flutter采用Image加载webp动画。 遇到的问题 问题:Flutter加载webp再次加载无法再次播放动画问题 看如下代码: Image.asset(assets/images/xxx.webp,width: 40.w,height: 30.w, )运行的效果&#xf…

效果

实现

  • 图片资源采用boss包中的动画webp资源。
  • Flutter采用Image加载webp动画。

遇到的问题

问题:Flutter加载webp再次加载无法再次播放动画问题

看如下代码:

Image.asset('assets/images/xxx.webp',width: 40.w,height: 30.w,
)

运行的效果:

直接采用上面代码加载webp动画图片的时候,发现首次加载是没有问题的,当切换其他tab再次切换回来的时候,虽然我重新setState了,但是图片不会重新动画加载出来。开始觉得很奇怪,Image都重新创建了,为啥动画不重新执行呢?心想难道有缓存,想当然就给Image定义了key,每次点击按钮给Image设置不同的key,运行发现还是不行,到这一步只好谷歌大法了,看到了很多人遇到这个问题,但是没有给出解决的答案,看来只能源码大法了。

源码走起~~这里省略…

然后发现Image中有内存缓存ImageCache,翻看了源码后发现了解决方案,因为这里我不需要内存缓存,而且这个缓存与Image中的bundle有关系,只要每次创建Image设置不同的bundle就OK了,所以我就把代码尝试修改了下。

Image.asset('assets/images/xxx.webp',bundle: PlatformAssetBundle(),width: 40.w,height: 30.w,
)

再运行下效果:

完整源码

import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_project/res/colors/color_res.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';/// BottomBarItem
class BottomBarItem extends StatefulWidget {// Tab 名字final String tabName;// Tab 图标final String tabIcon;// Tab 选中图标final String tabSelectedIcon;// 默认颜色final Color tabTextColor;// 选中颜色final Color tabTextSelectedColor;// Tab对应索引final int tabIndex;// 点击回调final Function(int) onTap;// 是否选中final bool isChecked;// 角标final int badger;const BottomBarItem({Key? key,required this.tabName,required this.tabIcon,required this.tabSelectedIcon,required this.onTap,required this.tabIndex,this.tabTextColor = Colors.grey,this.tabTextSelectedColor = RC.themeColor,this.isChecked = false,this.badger = 0,}) : super(key: key);@overrideState<BottomBarItem> createState() => _BottomBarItemState();
}class _BottomBarItemState extends State<BottomBarItem> {@overrideWidget build(BuildContext context) {return InkWell(child: Stack(children: [Positioned(child: Container(alignment: Alignment.center,child: Column(crossAxisAlignment: CrossAxisAlignment.center,mainAxisAlignment: MainAxisAlignment.start,children: [widget.isChecked? Image.asset(widget.tabSelectedIcon,bundle: PlatformAssetBundle(),width: 40.w,height: 30.w,): Image.asset(widget.tabIcon,width: 40.w,height: 30.w,),Text(widget.tabName,style: TextStyle(color: widget.isChecked? widget.tabTextSelectedColor: widget.tabTextColor,fontSize: 10.sp,),),],),),),Visibility(visible: widget.badger > 0,child: Positioned(right: 30.w,top: 10.w,child: ClipOval(child: Container(alignment: Alignment.center,color: Colors.red,width: 8,height: 8,),),),)],),onTap: () {widget.onTap(widget.tabIndex);setState(() {});},);}
}

具体详情:github.com/yixiaolunhui/flutter_project

http://www.yayakq.cn/news/966455/

相关文章:

  • 查找邮箱注册过的网站用网址进入的游戏
  • 深圳优化网站公司优化的近义词
  • 正规的网站优化推广公司软件著作权申请费用
  • 广州建设银行保安招聘网站庆阳网红
  • 做网站 空间湖南关键词优化推荐
  • 网络推广有哪些网站网页架构人才培训中心
  • 淮北市建设安全监督站网站asp网站服务器架设
  • 重庆建网站公司朋友圈网站怎么做的
  • 装饰装修网站大全wordpress从前台登录
  • 如何制作网站导航栏珠海网站设计培训学校
  • asp.net 手机网站开发项目网络图怎么绘制
  • 深圳做网站哪家好wordpress网站服务器
  • 一般的手机网站建设多少钱wordpress 时间函数
  • 中文商城响应式html网站模板业务外包的优势和劣势
  • 微餐饮建站费用如何让百度搜到我的网站
  • 怎么花最少的钱做网站网站设计管理方向
  • 网站的交互设计潍坊网络推广网站建设
  • 360度搜索建站网快速学习网站制作
  • 南昌定制网站开发多少钱wordpress标签链接
  • 顺企网是什么网站建立网站需要多长钱
  • 厦门杏林建设企业网站宁波专业建站
  • 网站数据库访问阜蒙县建设镇官方网站
  • 网站建设公司高端怎样优化排名自己网站
  • 北京网站制作的公司物流商 网站建设方案
  • 北京网站建设可选兴田德润门户手机网站开发
  • 河北做网站电话深圳科源建设集团有限公司网站
  • 在线网站建设联系人域名没备案wordpress不能编辑文章
  • 做网站建设的名声很差吗高度重视局门户网站建设
  • 网站建设需要很强的编程wordpress是建站最快的
  • 网站建设优化服务案例阿里巴巴国际贸易网