一个非常美的FlutterUI组件扩展集:FLUI
这是一个群内的网友写的,感觉里面的组件风格非常美,封装的挺到位的,在此推荐给大家,具体可以参考学习。
可以学到的知识还是挺多的,组件UI封装可以很大的提高页面的速度效率,封装是一个非常重要的技能。
适合广大Flutter爱好者。
丰富易用/简易定制/高效反馈。
请确保 Flutter 的版本 >= v1.7.8+hotfix.1

关于主题,由于 Flutter 本身对主题的支持(配置,切换等)已经足够强大,所以 FLUI 设计的初衷就是无风格化的组件,尽可能的从组件树中读取 ThemeData,另外大部分组件也是支持对颜色,样式进行设置的。
FLUI 里大部分组件的选择都是基于一致性,根据用户在各个平台的使用习惯迁移过来,这里也参考了很多其他平台上成熟的 UI 框架比如 Antd, QMUI, Vant 等等,由于 Flutter 未来面向的平台众多,所以能做的组件还是一个比较大的体量。
FLUI 还有另外一个目标就是提供交互反馈,比如支持显示 loading 的按钮,toast,支持伸缩和 shimmer 动画的骨架屏,支持点击效果的 ListTile 等等,这样用户可以清晰地感知到自己的操作,也能很好的标明当前页面的状态。
简介

FLUI 的组件是在 Flutter 框架上进行的扩展,目前已经有 15 个类别并且在不断增加。
每个组件几乎都是独立的(少数有相互依赖),引入时可以直接 import 'package:flui.dart' 也可以 import 'package:flui/widgets/avatar.dart',编译打包时 tree-shaking 会接管依赖的优化流程。
未来 FLUI 也会加入一些业务组件,比如图表,图片选择器等等,关于组件的动态化配置和渲染也在探索中。
特性
- 开箱即用的高质量 Flutter UI 组件
- 完善的使用示例和文档
- 细粒度非风格化的组件适用于不同类型的应用
兼容性
FLUI 在多端具有良好的兼容性,框架会一直基于 Flutter Stable Channel 开发。
快速上手
安装
dependencies:
flui: 0.7.4
然后运行 flutter pub get 下载依赖。
使用
依赖安装完成后直接引入组件。
import 'package:flui/flui.dart
// in somewhere
FLAppBarTitle(
title: 'AppBar',
subtitle: '(subtitle)',
layout: FLAppBarTitleLayout.vertical,
showLoading: true
)
内有各种丰富的组件,具体项目内查看。
大家如果有其他更好的也可以投稿上来,或者在下方评论。
Flutter交流QQ群:874592746
Flutter微信群

微信公众号
关注公众号“Flutter前线”,各种Flutter项目实战经验技巧,干活知识,Flutter面试题答案,等你来领取。

一个非常美的FlutterUI组件扩展集:FLUI的更多相关文章
- 深入理解Azure自动扩展集VMSS(2)
VMSS中Auto Scale基本原理及诊断 在前面的介绍中,我们看到通过定义规则可以实现虚拟机扩展集的auto scale,那么在后台执行上VMSS的扩展依赖于哪些组件,出现问题(比如自动扩展没有发 ...
- 003.Ceph扩展集群
一 基础准备 参考<002.Ceph安装部署>文档部署一个基础集群. 二 扩展集群 2.1 扩展架构 需求:添加Ceph元数据服务器node1.然后添加Ceph Monitor和Ceph ...
- Redis复制与可扩展集群搭建
抄自:http://www.infoq.com/cn/articles/tq-redis-copy-build-scalable-cluster 讨论了Redis的常用数据类型与存储机制,本文会讨论一 ...
- (转)Redis复制与可扩展集群搭建
讨论了Redis的常用数据类型与存储机制,本文会讨论一下Redis的复制功能以及Redis复制机制本身的优缺点以及集群搭建问题. Redis复制流程概述 Redis的复制功能是完全建立在之前我们讨论过 ...
- 深入理解Azure自动扩展集VMSS(3)
在实际使用过程当中,使用VMSS有一些最佳实践的建议和限制,便于你在做自动扩展设计的时候进行考虑: 关于VMSS 如果你使用的是系统镜像,一个扩展集中虚拟机数量不能超过100 无论是在ASM还是ARM ...
- 深入理解Azure自动扩展集VMSS(1)
前文中已经详细介绍了如何配置和部署Azure的虚拟机扩展集VMSS进行自动扩展,但在实际使用过程当中,用户会出现更进一步使用的一些问题,VMSS基本扩展原理及怎么简单调试?如何进行手动扩展?怎么使用自 ...
- Java高并发 -- J.U.C.组件扩展
Java高并发 -- J.U.C.组件扩展 主要是学习慕课网实战视频<Java并发编程入门与高并发面试>的笔记 FutureTask Future模式,核心思想是异步调用.和同步调用的区别 ...
- Redis复制与可扩展集群搭建【转】
本文会讨论一下Redis的复制功能以及Redis复制机制本身的优缺点以及集群搭建问题. Redis复制流程概述 Redis的复制功能是完全建立在之前我们讨论过的基于内存快照的持久化策略基础上的,也就是 ...
- voltdb数据库持久性,扩展集群
之前在git上下载的voltdb,以及在官网下载的社区版voltdb均不支持持久性事务,和扩展集群,今天下载了企业试用版voltdb,安装过程不再赘述,记录一下我的使用过程 持久性测试 以前的 vol ...
随机推荐
- startup启动不起来关于监听的问题
问题描述:要在sqlplus中启动到startup状态,但是提示我没有监听,本来以为启动一下就可以,但是connecting to一直卡半天,stop都停止不了 1.发现监听有问题,前去更改 SQL& ...
- ggforce|绘制区域轮廓-区域放大-寻找你的“onepiece”
首发于“生信补给站” https://mp.weixin.qq.com/s/fm69bw-3cww1YEW_kBcTHQ 更多关于R语言,ggplot2绘图,生信分析的内容,关注有惊喜
- Stream系列(四)Sorted方法使用
排序和反向排序 EmployeeTestCase.java package com.example.demo; import lombok.Data; import lombok.ToString; ...
- 安卓开发之Java学习
Java之素数(这里附上王智超大佬的博客地址)https://blog.csdn.net/weixin_43862765/article/details/103311286
- python数据分析三个重要方法之:numpy和pandas
关于数据分析的组件之一:numpy ndarray的属性 4个必记参数:ndim:维度shape:形状(各维度的长度)size:总长度dtype:元素类型 一:np.array()产生n维 ...
- insertBefore()
insertBefore()方法将把一个给定的节点插入到一个给定元素节点的给定子节点前面,他返回一个指向新增子节点的引用指针: reference = element.insertBefore(new ...
- 原生线程池这么强大,Tomcat 为何还需扩展线程池?
前言 Tomcat/Jetty 是目前比较流行的 Web 容器,两者接受请求之后都会转交给线程池处理,这样可以有效提高处理的能力与并发度.JDK 提高完整线程池实现,但是 Tomcat/Jetty 都 ...
- CentOS6下安装zabbix3.4
安装环境 系统 Centos6.7,最小化安装 CPU 2核 内存 2G 硬盘 200G IP 192.168.100.168/24 主机名 zabbix Zabbix版本 3.4 数据库 mysql ...
- 堆的python实现及其应用
堆的概念 优先队列(priority queue)是一种特殊的队列,取出元素的顺序是按照元素的优先权(关键字)大小,而不是进入队列的顺序,堆就是一种优先队列的实现.堆一般是由数组实现的,逻辑上堆可以被 ...
- 09-kubernetes StatefulSet
目录 StatefulSet 简单测试 使用 StatefulSet 创建基础的PV StatefulSet 清单 StatefulSet 有状态应用副本集 无状态的, 更关注的是群体 有状态的, 更 ...