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

flutter开发实战-flutter_spinkit实现多种风格进度指示器

flutter开发实战-flutter_spinkit实现多种风格进度指示器

最近开发过程中flutter_spinkit,这个拥有多种种风格加载指示器

在这里插入图片描述

一、flutter_spinkit

引入flutter_spinkit

  # 多种风格的模糊进度指示器flutter_spinkit: ^5.1.0

效果示例

const spinkit = SpinKitRotatingCircle(color: Colors.white,size: 50.0,
);
final spinkit = SpinKitFadingCircle(itemBuilder: (BuildContext context, int index) {return DecoratedBox(decoration: BoxDecoration(color: index.isEven ? Colors.red : Colors.green,),);},
);
final spinkit = SpinKitSquareCircle(color: Colors.white,size: 50.0,controller: AnimationController(vsync: this, duration: const Duration(milliseconds: 1200)),
);

二、实现指示器效果

代码如下

import 'package:flutter/material.dart';
import 'package:flutter_spinkit/flutter_spinkit.dart';/// 加载中
class LoadingWidget extends StatelessWidget {const LoadingWidget({this.bgColor, Key? key}) : super(key: key);final Color? bgColor;Color getColorAtIndex(int index) {if (index == 0) {return Colors.deepOrangeAccent;}if (index == 1) {return Colors.redAccent;}if (index == 1) {return Colors.lightBlueAccent;}return Colors.white70;}Widget build(BuildContext context) {return Container(color: bgColor != null ? bgColor : Colors.white,child: Center(child: Column(mainAxisAlignment: MainAxisAlignment.center,crossAxisAlignment: CrossAxisAlignment.center,children: [SizedBox(width: 300.0,height: 60.0,child: SpinKitThreeBounce(size: 40.0,itemBuilder: (BuildContext context, int index) {return DecoratedBox(decoration: BoxDecoration(color: getColorAtIndex(index),shape: BoxShape.circle));},),),Padding(padding: const EdgeInsets.only(top: 20)),Text(//S.of(context).viewStateLoading,"正在加载中,一会就到了",style: TextStyle(fontSize: 18,fontWeight: FontWeight.w500,fontStyle: FontStyle.normal,color: Colors.white,decoration: TextDecoration.none,),)],),),);}
}

三、小结

flutter开发实战-flutter_spinkit实现多种风格进度指示器.
学习记录,每天不停进步。

http://www.lryc.cn/news/112805.html

相关文章:

  • 检测文本是否由AI生成,GPT、文心一言等均能被检测
  • 【3D机甲】捏造型功能
  • 设计模式之五:单例模式
  • MATLAB的设置路径
  • Hyperledger Fabric 使用 CouchDB 和复杂智能合约开发
  • 这应该是最全的,Fiddler手机App抓包详解,看完还不会来找我...
  • 使用ubuntu-base制作根文件系统
  • springboot-mybatis的分页查询的接口
  • 网络音频终端音频编码解码终端
  • cordova 12 编译失败Could not find method compile() for arguments [com....]
  • 快速开发平台 WebBuilder 9 发布
  • GPT-5出世,需5万张H100!英伟达GPU陷短缺风暴
  • Jmeter学习和一个关于jmeter获取X-XSRF-TOKEN时的坑
  • SQL注入总结
  • Java 实现 后端分页
  • 数据结构 | 搜索和排序——排序
  • 【嵌入式环境下linux内核及驱动学习笔记-(18)LCD驱动框架1-LCD控制原理】
  • 【unity】ShaderGraph实现等高线和高程渐变设色
  • 快速修复应用程序中的问题的利器—— Android热修复
  • 什么是全局代理,手机怎么设置全局代理
  • 技术领先产品ASSAR300一一基于SAR成像的角雷达产品,助力自动泊车
  • 单元测试之 - Spring框架提供的单元/集成测试注解
  • 深入学习 Redis - 事务、实现原理、指令使用及场景
  • 异步javaScript
  • 看跨境电商世界区域分布,Live Market教你深入参与跨境创业
  • python中的装饰器的真正含义和用法
  • opencv基础-38 形态学操作-闭运算(先膨胀,后腐蚀)cv2.morphologyEx(img, cv2.MORPH_CLOSE, kernel)
  • RocketMQ生产者和消费者都开启Message Trace后,Consume Message Trace没有消费轨迹
  • JDV背后的技术-助力618 | 京东云技术团队
  • 0基础学习VR全景平台篇 第78篇:全景相机-拍摄VR全景