Flutter学习笔记--Gridview网格组件制作相册
Flutter学习笔记–Gridview网格组件制作相册
效果:
GridView可以构建一个二维网格列表,其官方定义参考:
https://book.flutterchina.club/chapter6/gridview.html
它的布局方式主要为两种:
SliverGridDelegateWithFixedCrossAxisCount
该子类实现了一个横轴为固定数量子元素的layout算法。
SliverGridDelegateWithMaxCrossAxisExtent
该子类实现了一个横轴子元素为固定最大长度的layout算法。今天我们介绍第一种:其构造函数为(数据为double型):
SliverGridDelegateWithMaxCrossAxisExtent({
maxCrossAxisExtent, //子元素在横轴最大长度
mainAxisSpacing = 0.0, //主轴元素间距
crossAxisSpacing = 0.0, //横轴间距
childAspectRatio = 1.0, //元素与主轴横轴得大小比例
})
gridview创建在body中,首先设置如上的窗口格式:
body:GridView( //划分网格
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount( //横轴固定数量子元素
crossAxisCount: 3, //横轴子元素数量
mainAxisSpacing: 2.0, //主轴间距
crossAxisSpacing: 2.0, //横轴间距
childAspectRatio: 1.0 //子元素放置比例
),
然后创建具体元素(我这里使用的是Image.network的网络图片地址):
children: [
new Image.network(‘http://img5.mtime.cn/mg/2020/08/14/145018.89856988_285X160X4.jpg’,fit:BoxFit.cover),
new Image.network(‘http://img5.mtime.cn/mg/2020/08/14/083852.73752310_285X160X4.jpg’,fit:BoxFit.cover),
new Image.network(‘http://img5.mtime.cn/mg/2020/08/10/120400.47292216.jpg’,fit:BoxFit.cover),
new Image.network(‘http://img5.mtime.cn/mg/2020/07/23/201005.49303255_270X405X4.jpg’,fit:BoxFit.cover),
new Image.network(‘http://img5.mtime.cn/mg/2020/08/02/162809.52117921_270X405X4.jpg’,fit:BoxFit.cover),
new Image.network(‘http://img5.mtime.cn/mg/2020/07/24/084255.58952810_270X405X4.jpg’,fit:BoxFit.cover),
new Image.network(‘http://img5.mtime.cn/mg/2020/07/24/105612.82558632_270X405X4.jpg’,fit:BoxFit.cover),
new Image.network(‘http://img5.mtime.cn/mg/2020/08/14/091552.47653984_285X160X4.jpg’,fit:BoxFit.cover),
],
大家也可以参考我的图片位置,我是打开的时光网:
找到喜欢的图片右击选择复制图片链接:
然后将地址放入Image.network中;
代码如下:
import 'package:flutter/material.dart';
void main()=> runApp(MyApp());
class MyApp extends StatelessWidget{@overrideWidget build(BuildContext context){return MaterialApp(title: '开心Flutter Demo',home: Scaffold(appBar: new AppBar(title:new Text('开心Flutter Demo')),body:GridView( //划分网格gridDelegate: SliverGridDelegateWithFixedCrossAxisCount( //横轴固定数量子元素crossAxisCount: 3, //横轴子元素数量mainAxisSpacing: 2.0, //主轴间距crossAxisSpacing: 2.0, //横轴间距childAspectRatio: 1.0 //子元素放置比例),children: <Widget>[new Image.network('http://img5.mtime.cn/mg/2020/08/14/145018.89856988_285X160X4.jpg',fit:BoxFit.cover),new Image.network('http://img5.mtime.cn/mg/2020/08/14/083852.73752310_285X160X4.jpg',fit:BoxFit.cover),new Image.network('http://img5.mtime.cn/mg/2020/08/10/120400.47292216.jpg',fit:BoxFit.cover),new Image.network('http://img5.mtime.cn/mg/2020/07/23/201005.49303255_270X405X4.jpg',fit:BoxFit.cover),new Image.network('http://img5.mtime.cn/mg/2020/08/02/162809.52117921_270X405X4.jpg',fit:BoxFit.cover),new Image.network('http://img5.mtime.cn/mg/2020/07/24/084255.58952810_270X405X4.jpg',fit:BoxFit.cover),new Image.network('http://img5.mtime.cn/mg/2020/07/24/105612.82558632_270X405X4.jpg',fit:BoxFit.cover),new Image.network('http://img5.mtime.cn/mg/2020/08/14/091552.47653984_285X160X4.jpg',fit:BoxFit.cover),],)));}
}
效果如上所述。
Flutter学习笔记--Gridview网格组件制作相册相关推荐
- Flutter学习笔记 --多子元素组件
多子元素组件有很多,其中常用的有Scaffold.AppBar.Row.Column.ListView.GridView.CustomScrollView.Flex.Wrap.Flow等. 1.Sca ...
- Flutter学习笔记(10)--容器组件、图片组件
如需转载,请注明出处:Flutter学习笔记(10)--容器组件.图片组件 上一篇Flutter学习笔记(9)--组件Widget我们说到了在Flutter中一个非常重要的理念"一切皆为组件 ...
- Flutter学习笔记(18)--Drawer抽屉组件
如需转载,请注明出处:Flutter学习笔记(18)--Drawer抽屉组件 Drawer(抽屉组件)可以实现类似抽屉拉出和推入的效果,可以从侧边栏拉出导航面板.通常Drawer是和ListView组 ...
- Flutter学习笔记 —— 完成一个简单的新闻展示页
Flutter学习笔记 -- 完成一个简单的新闻展示页 前言 思路分析 案例代码 结束语 上图 前言 刚学Flutter不久,今天我们来看看如何使用 Container & ListView实 ...
- [Unity学习笔记:FPS游戏制作(3)]子弹拖尾,碰撞与枪口火焰效果
往期博客[Unity学习笔记:FPS游戏制作(2)] 发射子弹----(2021.6.20学习笔记) 文章目录 一,实现思路 二,粒子效果的实现 (1)子弹拖尾特效的实现 (2)枪口火焰特效的实现 ( ...
- vue学习笔记-03-浅谈组件-概念,入门,如何用props给组件传值?
vue学习笔记-03-浅谈组件-概念,入门,如何用props给组件传值? 文章目录 vue学习笔记-03-浅谈组件-概念,入门,如何用props给组件传值? 什么是组件? 为什么要使用组件? 如何使用 ...
- Unity学习笔记—二次元日系游戏制作(实践篇-游戏初始化场景制作)
原教程:siki:二次元日系游戏制作工具 - live2dSDK入门教程 http://www.sikiedu.com/my/course/282 (上)Unity学习笔记-二次元日系游戏制作(理论篇 ...
- Flutter学习笔记(一)
Flutter学习笔记(一) 学习前言 dart安装 vscode配置 持续更新中 学习前言 最近准备学习Flutter,参考B站 Dart Flutter教程_2022精讲Dart Flutter3 ...
- Flutter学习笔记(二)登陆注册界面的实现
Flutter学习笔记(二)登陆注册界面的实现 简单的登录和注册界面的布局 SharedPreferences存储数据 页面路由和参数传递的心得 这几天按照顺序先完成了登录和注册的页面,没有什么特别的 ...
最新文章
- 加速100倍,性能媲美SOTA,浙大知识蒸馏新方法FastDFKD
- mysql 存储过程基础_MySQL基础-存储过程
- 我总结的js性能优化的小知识
- android 消息循环机制--looper handler
- 基础-快速排序(基本)
- [android] 百度地图开发 (二).定位城市位置和城市POI搜索
- python牛客网编程题_【面经】小米软件开发一面(python)面经 2020 2020
- Web应用程序中的Spring JDBC入门
- YUV格式转换RGB(基于opencv)
- Haproxy的部署安装
- JVM垃圾回收算法标记清除和复制算法
- 9判断整数序列是不是二元查找树的后序遍历结果
- Java数据结构——二叉树
- 瑞友天翼(GWT system)移动办公远程接入解决方案
- 小说app开发功能及盈利方式
- 玩玩socket-socket是什么意思
- 80亿美元贷款细节曝光 阿里“移联网布局+大数据蓝图”加码IPO
- 删除文件夹显示找不到该项目,也无法改名、移动等
- 【安装cad后不小心卸了,再次重新安装时显示已安装。这个怎么破?】
- 软件设计师中级: 2019年上半年软件设计师考试上午真题 专业解析+参考答案
热门文章
- 简约手绘风卡通教学课件PPT模板
- 流利阅读 2019.1.28 The death of Venice? City’s battles with tourism and flooding reach crisis level
- RGB渐变颜色转换公式及例程
- simscape 使用
- VS系列多通道振弦传感器无线采发仪与参数配置工具连接
- BYPASS旁路保护设备
- heic格式转化器:heic转jpg
- Excel函数大全-09逻辑函数
- 强制关闭miui12.5充电提示音,亲测可用
- 计算机7D,本是同根生 佳能EOS 7D/EOS 50D对比评测