Flutter开发技巧集锦
flutter中单例的写法
class AccountManager {
 factory AccountManager() => _instance ??= AccountManager._();
   /// 销毁单例
  static void destroyInstance() => _instance = null;
}
flutter 页面路由
利用GetX框架来实现
get: ^4.6.5
CoinRankPage 为具体的页面实现
点击查看代码
abstract class Routes {
  Routes._();
static const main = "/main";
  ///页面合集
  static final routePage = [
      GetPage(
      name: coinRink,
      page: () => const CoinRankPage(),
      binding: CoinRankBinding(),
    ),
  ]
  }
刷新和加载更多的实现
依赖框架
pull_to_refresh: ^2.0.0
头部刷新和底部加载更多widget封装
点击查看代码
import 'package:flutter/cupertino.dart';
import 'package:pull_to_refresh/pull_to_refresh.dart';
/// 头部刷新控件
class RefreshHeader extends StatelessWidget {
  const RefreshHeader({Key? key}) : super(key: key);
  @override
  Widget build(BuildContext context) {
    return const WaterDropHeader(
      complete: Center(
        child: Text("下拉刷新完成"),
      ),
    );
  }
}
/// 底部加载更多控件
class RefreshFooter extends StatelessWidget {
  const RefreshFooter({Key? key}) : super(key: key);
  @override
  Widget build(BuildContext context) {
    return CustomFooter(
      builder: (context, mode) {
        Widget body;
        if (mode == LoadStatus.idle) {
          body = const Text("上拉加载");
        } else if (mode == LoadStatus.loading) {
          body = const CupertinoActivityIndicator();
        } else if (mode == LoadStatus.failed) {
          body = const Text("加载失败!点击重试!");
        } else if (mode == LoadStatus.canLoading) {
          body = const Text("松手,加载更多!");
        } else {
          body = const Text("没有更多数据了!");
        }
        return Center(child: body);
      },
    );
  }
}
Flutter开发技巧集锦的更多相关文章
- Unity 游戏开发技巧集锦之使用cookie类型的纹理模拟云层的移动
		Unity 游戏开发技巧集锦之使用cookie类型的纹理模拟云层的移动 使用cookie类型的纹理模拟云层的移动 现实生活中,当阳光直射大地,而天空中又有很多云时,云层的影子总是会投射在大地上,风吹着 ... 
- Unity 游戏开发技巧集锦之创建透明的材质
		Unity 游戏开发技巧集锦之创建透明的材质 Unity创建透明的材质 生活中不乏透明或者半透明的事物.例如,擦的十分干净的玻璃,看起来就是透明的:一些塑料卡片,看起来就是半透明的,如图3-23所示. ... 
- Unity 游戏开发技巧集锦之创建部分光滑部分粗糙的材质
		Unity 游戏开发技巧集锦之创建部分光滑部分粗糙的材质 创建部分光滑部分粗糙的材质 生活中,有类物体的表面既有光滑的部分,又有粗糙的部分,例如丽江的石板路,如图3-17所示,石板的表面本来是粗糙的, ... 
- Unity 游戏开发技巧集锦之材质的应用的创建反射材质
		Unity 游戏开发技巧集锦之材质的应用的创建反射材质 Unity中材质的应用 游戏中,大多数材质的应用都离不开纹理,而纹理本身是图片.所以,在学习本章时,最好在电脑上安装一个可以编辑图片的功能强大的 ... 
- Unity 游戏开发技巧集锦之使用忍者飞镖创建粒子效果
		Unity 游戏开发技巧集锦之使用忍者飞镖创建粒子效果 使用忍者飞镖创建粒子效果 游戏中,诸如烟.火.水滴.落叶等粒子效果,都可以使用粒子系统(particle system)来实现.例如,<明 ... 
- Unity 游戏开发技巧集锦之制作一个望远镜与查看器摄像机
		Unity 游戏开发技巧集锦之制作一个望远镜与查看器摄像机 Unity中制作一个望远镜 本节制作的望远镜,在鼠标左键按下时,看到的视图会变大:当不再按下的时候,会慢慢缩小成原来的视图.游戏中时常出现的 ... 
- VS Code开发技巧集锦
		2016 年 9 月 23-24 日,由 CSDN 和创新工场联合主办的“MDCC 2016 移动开发者大会? 中国”(Mobile Developer Conference China)将在北京? ... 
- VS Code开发技巧集锦【转】
		转自:http://blog.csdn.net/tiantangyouzui/article/details/52163175 入门 自定义 扩展 文件/文件夹管理 编辑技巧 智能感应功能 代码片段 ... 
- LoadRunner小技巧集锦
		preftest 性能测试工作室,专注于性能测试技术研究(www.AutomationQA.com) LoadRunner小技巧集锦 1.录制脚本中包含中文,出现乱码怎么办? 把录制选项中的Suppo ... 
- SQL开发技巧(二)
		本系列文章旨在收集在开发过程中遇到的一些常用的SQL语句,然后整理归档,本系列文章基于SQLServer系列,且版本为SQLServer2005及以上-- 文章系列目录 SQL开发技巧(一) SQL开 ... 
随机推荐
- CPNtools协议建模安全分析(一)
			本文根据最近整理的CPNtools论文和CPNtools官网上的说明,以及参照了乌克兰敖德萨 ---国家电信研究院运输和通信部关于 电信系统协议仿真关于CPNtools的学生讲义.基于此和和自己的 ... 
- MySQL---面经
			如果想要对 MySQL 的索引树有更深入的了解,掘金的小册子:<MySQL 是怎样运行的> MySQL 是怎样运行的 以下是常见面试题 MySQL日志 MySQL日志系统 redo_log ... 
- Openssl命令详解 -  证书篇
			生成自签证书 # 设置CA证书subject CA_SUBJ="/C=CN/ST=ShanDong/L=JiNan/O=sec/OU=sec/CN=www.hxy.com/emailAddr ... 
- 内存缓存 Gcache VS Caffeine源码详解
			转一篇.后续再尝试自己实践一下 
- Abp.Zero 手机号免密登录验证与号码绑定功能的实现(三):Vue网页端开发
			前端代码的框架采用vue.js + elementUI 这套较为简单的方式实现,以及typescript语法更方便阅读. 首先来编写发送验证码函数, 登录,绑定,解绑的业务都需要发送验证码功能,通过c ... 
- Vue3.x知识图谱
			Vue3.x知识图谱 https://gitee.com/jishupang/vue3-knowledge-map/tree/master 回头有时间再贴图吧 
- Markdown 使用diff高亮代码区某行数据
			使用diff标明代码区即可 如: ```diff fun main(){ + say("") return "" } fun main(){ - say(&qu ... 
- Ubuntu adb 报错:no permissions (missing udev rules? user is in the plugdev group);问题的解决办法
			问题重现: 确认: Android设备已连接PC Android设备已打开USB调试 zuo@zuo-ubuntu:/etc/udev/rules.d$ adb devices List of dev ... 
- Spring Boot自动运行之 CommandLineRunner、ApplicationRunner和@PostConstruct
			在使用Spring Boot开发的工作中,我们经常会需要遇到一种功能需求,比如在服务启动时候,去加载一些配置,去请求一下其他服务的接口.Spring Boot给我们提供了三种常用的实现方法: 第一种是 ... 
- B站框框老师+宋浩老师概率论视频课笔记,宋浩老师数理统计视频课笔记
			只做理解类记录,哪个知识点忘了去看视频.前四章是概率,看的框框老师. 概率论 1.随机试验:可重复性.可预知性.不确定性 2.样本空间:随机试验E的所有可能结果,记为S或Ω 3.样本点:样本空间中的每 ... 
