10、弹性布局(Flex Expanded)
自定义的IconContainer
class IconContainer extends StatelessWidget {
Color color;
IconData icon;
// IconContainer(this.icon ,{super.key,required this.color}); // 与下方效果一样
// IconContainer(this.icon ,{Key? key,required this.color}) : super(key: key);
IconContainer(this.icon ,{Key? key, this.color=Colors.red}) : super(key: key); //可传入颜色(也可以不用传入颜色) @override
Widget build(BuildContext context) {
return Container(
alignment: Alignment.center, //内容居中
color: color,
height: double.infinity,
width: double.infinity,
child: Icon(icon,size: 50,),
);
}
}
水平弹性布局
(1)
class MyApp extends StatelessWidget {
const MyAPP({super.key}); @override
Widget build(BuildContext context) {
return Row(
children: [
Expanded(flex: 2,child: IconContainer(Icons.ac_unit,color: Colors.yellow),//元素设置宽度没有效果
),
Expanded(flex: 2,child: IconContainer(Icons.home_max,color: Color.fromARGB(255, 226, 12, 47)),
),
Expanded(flex: 1,child: IconContainer(Icons.ac_unit,color: Color.fromARGB(255, 9, 31, 155)),
),
],
);
}
}
(2)
class HomePage2 extends StatelessWidget {
const HomePage2({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return Flex(
// direction: Axis.vertical, // 垂直
direction: Axis.horizontal, //水平
children: [
Expanded(flex: 2, child: IconContainer(Icons.home, color: Colors.red)),
Expanded(
flex: 1,
child: IconContainer(Icons.search, color: Colors.orange),
)],
);
}}
垂直弹性布局
(1)
class MyRow extends StatelessWidget {
const MyRow({super.key}); @override
Widget build(BuildContext context) {
return Column(
children: [
Expanded(flex: 2,child: IconContainer(Icons.ac_unit,color: Colors.yellow),//元素设置高度没有效果
),
Expanded(flex: 2,child: IconContainer(Icons.home_max,color: Color.fromARGB(255, 226, 12, 47)),
),
Expanded(flex: 1,child: IconContainer(Icons.ac_unit,color: Color.fromARGB(255, 9, 31, 155)),
),
],);
}}
(2)
class HomePage2 extends StatelessWidget {
const HomePage2({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return Flex(
direction: Axis.vertical, // 垂直
//direction: Axis.horizontal, //水平
children: [
Expanded(flex: 2, child: IconContainer(Icons.home, color: Colors.red)),
Expanded(
flex: 1,
child: IconContainer(Icons.search, color: Colors.orange),
)],
);
}}
10、弹性布局(Flex Expanded)的更多相关文章
- 弹性布局flex
前几天写过怪异盒子布局,以前在项目中用到弹性布局flex这个属性,当时没深入研究,这里各种查阅各种测试,把这个属性记录下 以免忘记, 弹性布局:是提供一种更加有效的方式来对一个容器中的条目进行排列.对 ...
- 前端入门5-CSS弹性布局flex
本篇文章已授权微信公众号 dasu_Android(大苏)独家发布 声明 本系列文章内容全部梳理自以下四个来源: <HTML5权威指南> <JavaScript权威指南> MD ...
- Flutter布局----弹性布局 (Flex)
弹性布局(Flex) 弹性布局允许子组件按照一定比例来分配父容器空间.弹性布局的概念在其它UI系统中也都存在,如H5中的弹性盒子布局,Android中的FlexboxLayout等.Flutter中的 ...
- Flutter 布局类组件:弹性布局(Flex)
前言 弹性布局允许子组件按照一定比例来分配父容器空间,Flutter中的弹性布局主要通过Flex和Expanded来配合实现. Flex Flex组件可以沿着水平或垂直方向排列子组件,如果你知道主轴方 ...
- 移动端弹性布局--flex
目前,Flex布局,可以简便.完整.响应式地实现各种页面布局.而且,它已得到了所有浏览器的支持,这意味着,我们能很安全地使用这项功能. 如果你对弹性网页布局感兴趣,那可别错过flex这么好用的属性哦. ...
- 弹性布局-flex
浅谈display:flex display:flex 意思是弹性布局 首先flex的出现是为了解决哪些问题呢? 一.页面行排列布局 像此图左右两个div一排显示 可以用浮动的布局方式 html部 ...
- 弹性布局Flex的基本语法
一.Flex的简介 Flex 是 Flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性.用六个字概括弹性布局就是简单.方便.快速. flex( fle ...
- 弹性布局--flex方向
flex方向 flex方向由flex-direction特性决定,用于定义弹性布局模式.flex-direction共有4种模式:从左向右.从右向左.从上往下.从下往上. 主轴 主轴的起点与终点定义了 ...
- 微信小程序页面布局之弹性布局-Flex介绍
布局的传统解决方案,基于盒状模型,依赖 display 属性 + position属性 + float属性.它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现. 2009年,W3C 提出了一种新 ...
- 简单探讨弹性布局flex
css 弹性布局: 盒子模型: box-sizing属性1.content-box 正常的普通的盒子模型用padding和border会使盒子变大:(向外扩张)2.border-box 盒子模型,pa ...
随机推荐
- http 500 错误
214 [Thu Sep 09 16:03:54.919334 2021] [:error] [pid 32045] [client 124.238.184.230:23796] script '/v ...
- client-go实战之六:时隔两年,刷新版本继续实战
欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 时隔两年,<client-go实战>被激活 ...
- 俄罗斯版IDM安装与破解以及解决B站视频网站不弹出下载浮窗
IDM 全称 Internet Download Manager,是一款非常优秀的多线程下载和视频嗅探工具,不仅可以显著提高文件下载速度,配合IDM浏览器扩展插件,还可以嗅探并下载YouTube.知乎 ...
- idea修改默认maven配置
idea修改默认maven配置 方法一 (不推荐) 打开project.default.xml文件,在其中加入如下几行配置. 代码如下 保存修改之后新建一个maven项目查看效果 方法二 新增Proj ...
- Java并发编程和多线程的区别
并发编程: 并发编程是一种编程范式,它关注的是编写能够正确和高效处理多个并发任务的程序.并发编程不仅包括多线程,还包括了处理多个独立任务的各种技术和模式,如进程.协程.分布式编程等.并发编程的目标是实 ...
- Lora升级!ReLoRa!最新论文 High-Rank Training Through Low-Rank Updates
关注公众号TechLead,分享AI与云服务技术的全维度知识.作者拥有10+年互联网服务架构.AI产品研发经验.团队管理经验,同济本复旦硕,复旦机器人智能实验室成员,阿里云认证的资深架构师,项目管理专 ...
- LCT(link cut tree) 详细图解与应用
樱雪喵用时 3days 做了 ybtoj 的 3 道例题,真是太有效率了!!1 写死自己系列. 为了避免自己没学明白就瞎写东西误人子弟,这篇 Blog 拖到了现在. 图片基本沿用 OIwiki,原文跳 ...
- JAVA类的加载(2) ——按需加载(延迟加载)
1.例1: 1 /* 2 按需加载:当你不去实例化Cat时,Cat相关类都不会被加载,即按需加载(需要时加载) 3 1.先加载父类 4 2.初始化类 5 3.类只加载一次(暂且这么认为)--缓存 6 ...
- SNN_文献阅读_Effective and Efficient Computation with Multiple-timescaleSpiking Recurrent Neural Networks
Adaptive SRNN 基于多时间尺度脉冲循环神经网络的高效计算(SRNN) 中心思想: 使用替代梯度进行训练,克服SNN中梯度不连续的问题. 在PyTorch中直接使用BPTT进行训练. 结构 ...
- clipboard vue 一键复制
一键复制失败 首先 下载clipboard插件 npm install clipboard --save 在需要的组件里引入 也可以全局引入 import Clipboard from 'clipb ...