Flutter开发(八)—— 五种布局之Column Widget垂直布局组件

Flutter布局系统全面解析:从基础组件到复杂界面构建 在移动应用开发领域,良好的界面布局是用户体验的基础。Flutter作为Google推出的跨平台UI框架,提供了一套强大而灵活的布局系统,使开发者能够高效构建美观且响应式的用户界面。本文将全面剖析Flutter的核心布局组件,包括Row、Column、Stack、Flex、Container和Padding等,通过理论讲解和实际代码示例,帮助开发者掌握Flutter布局的精髓。 阅读详情

代码示例:
在Flutter中 Row(水平) 和 Column(垂直),就属性而言基本都是相同的,只是属性控制的方向不同。以下代码中有其常用的属性,具体的多说无益,跑代码来的更直观。

import 'package:flutter/material.dart';

main(List<String> args) {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Row 布局',
      home: Scaffold(
        appBar: new AppBar(title: new Text('Column 垂直布局')),
        body: Center( //将Column整体布局居中
          child: new Column(  //Column 垂直布局
            crossAxisAlignment: CrossAxisAlignment.end, //控制 children: <Widget> 中的子View靠左(start)中(center)右(end)
            mainAxisAlignment: MainAxisAlignment.end, //控制 子View 相对于 整体父布局位置 上(start)中(center)下(end)
            children: <Widget>[ //其子Widget 用children: <Widget>[ ] 包裹
              new RaisedButton(
                onPressed: () {},
                color: Colors.blueGrey,
                child: Text('blueGrey'),
                textColor: Color(0xffff0000),
              ),

              new RaisedButton( //  没有Expanded  则子Widget展示自身大小
                onPressed: () {},
                color: Colors.orangeAccent, //RaisedButton默认颜色
                highlightColor: Color(0xff00ff00), //RaisedButton点击颜色
                child: Text('orangeAccent'), //Text内容
                textColor: Color(0xffff0000), //Text 内容字体颜色
              ),

              new RaisedButton(
                onPressed: () {},
                color: Colors.lightBlueAccent,
                child: Text('lightBlueAccent'),
              ),
            ],
          ),
        ),
      ),
    );
  }
}

示例图:
在这里插入图片描述

Flutter布局相关widget整理 ​只要一个组件,调样式​:用Container或Padding。​水平排/垂直排​:用RowColumn。​填满剩余空间​:用Expanded。​重叠在一起​:用Stack。​内容太多排不下要换行​:用Wrap。​需要滚动​:用ListView或GridView。​精确指定大小​:用SizedBox。​处理文字溢出/缩放​:首选FittedBox。​做不同屏幕适配​:首选和。​做列表中的默认占位​:首选LimitedBox。​做纯视觉的交互效果​:首选。 阅读详情

相关推荐

智能电网中的智能调度与优化算法研究

本文研究智能电网中的智能调度与优化算法,旨在提高电网运行的效率与可靠性,减少能源浪费和设备故障的风险。在智能电网日益复杂化的背景下,传统的调度方法已难以满足高效、稳定的运行要求,因此亟需借助先进的优化算法对电网进行智能调度。本文第一深入分析智能电网调度中的关键问题与挑战,探讨优化算法在智能电网中的应用现状,并分析常见的优化算法,如遗传算法、粒子群算法和模拟退火算法。随后,本文构建智能电网的调度优化数学模型,并对电网负荷、发电模型及约束条件进行详细建模。在算法部分,本文提出改进的粒子群算法和遗传算法,并结合M

weixin_44553616的博客 1888

【flutter】Row和Column组件

Row和Column是flutter中最基础的容器组件,Row用来水平放置子组件,Column用来垂直放置子组件。它们都可以设置子组件的对齐方式。重点需要了解它们有哪些对齐方式,以及如何对齐的。 布局特点 Row在水平方向会尽可能大,大到会撑满parent;在垂直方向会尽可能小,小到能包裹住children。children在水平默认居左,垂直方向上默认居中。 Column在垂直方向上会尽可能大,...

devnn的专栏 5307

【Web实战】微信小程序逆向

2E 70 6E 67”为带存放路径的文件名称,“00 00 11 7C”对应文件在小程序包中的具体偏移位置,“00 01 01 F7“对应文件在小程序包中的数据长度。但这并不是最初的原项目文件结构,原因是微信服务器会将小程序源码中所有的“js”文件压入“app-service.js”文件中,将所有的“json”文件压入“app-config.json”中,将所有的“wxml”文件压入“page-frame.html”文件中,“wxss”则在处理之后以“html”文件的形式存留在对应页面目录之下。

若有战,召必回 1941

flutter之垂直布局Column的使用

Colum组件即垂直布局控件,能够将子组件垂直排列 比如现在我们要制作三个按钮,并让三个按钮垂直布局,这里用的不灵活布局与灵活布局混用,效果和代码如下: 写一段代码,在column里加入三行文字,然后看一下效果: crossAxisAlignment: CrossAxisAlignment.center文字居中对齐 CrossAxisAlignment.star:居左对齐。 CrossAxi...

qq_34497319的博客 1317

华为交换机链路聚合对接思科交换机链路聚合故障

2台华为交换机采用堆叠方式与思科交换机之间使用链路聚合,华为交换机与cisco交换机链路捆绑接口频繁UP/DOWN,业务中断。

网络工程师日常的博客 2116

Unity URP炫彩干涉效果:从薄膜干涉原理到Shader Graph实现

薄膜干涉是一种常见的光学现象,指光在透明薄膜上下表面反射后产生干涉,形成彩虹色条纹。其原理基于光程差导致的相长与相消干涉,不同波长的光被选择性增强或削弱。在计算机图形学中,这一物理现象被抽象为高效的数学模型,通过Shader编程实现动态色彩变化,为游戏和实时渲染带来独特的视觉表现力。技术实现上,常采用正弦函数结合噪声纹理来模拟色彩循环,利用法线与视角点积作为基础变量,加入噪声扰动模拟厚度不均,实现随视角变化的虹彩效果。在Unity URP渲染管线中,可通过Shader Graph可视化工具或手写HLSL代码

weixin_34026997的博客 292

Flutter 基础布局之Column

Column意为垂直布局,可以使其包含的子控件按照垂直方向排列 代码如下: class _TestState extends State<DemoPage2> { @override Widget build(BuildContext context) { return MaterialApp( home: Scaffold( body: Container( width: MediaQuery.of(context).siz

u013474690的博客 9970

【遥感数字图像处理(朱文泉)】第一章 数字图像基础

关于图像的定义、类型、模拟图像和数字图像

甜子yu的博客 4401

flutter布局-1-column

目录Column1、mainAxisAlignment:主轴布局方式,column主轴方向是垂直的方向2、crossAxisAlignment: 交叉轴的布局方式,对于column来说就是水平方向的布局方式3、textBaseline:字体的基线(基线这东西一直没搞懂,具体详见下一章Row,效果更明显,垂直方向没啥用,不明显)4、textDirection:文字布局方向5、verticalDire...

liu__520的博客 1461

保姆级教程:在Ubuntu 22.04上从零安装SUMO并运行第一个交通仿真

本教程详细介绍了在Ubuntu 22.04系统上从零安装SUMO交通仿真软件并运行第一个仿真的完整流程。涵盖环境准备、PPA源安装、核心组件验证、首次仿真案例运行以及进阶配置技巧,特别针对netedit路网编辑器和地图格式转换等实用工具进行重点讲解,帮助用户快速掌握SUMO在交通仿真领域的应用。

weixin_30546189的博客 420

CVPR 2026 即插即用 | 注意力篇 | MSEF:超轻注意力,空间-通道双分支并行融合,既增强特征又抑制噪声!

Multinex提出了一种超轻量级微光图像增强框架,其核心创新是MSEF模块。MSEF采用双分支并行架构,结合空间局部特征(深度可分离卷积)和全局通道注意力(改进SE),通过Tanh激活实现特征增强与抑制。相比传统注意力模块,MSEF在几乎不增加计算量的情况下显著提升性能,特别适合轻量级网络和边缘设备部署。实验表明,该模块能有效提升PSNR约3dB,同时保持极低的参数量(0.7K-45K)。

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 601

Flutter基础学习 11-19 垂直布局Column组件

前言:Column组件即垂直布局控件,能够将子组件垂直排列。其实前边学了Row组件就基本掌握了Column组件,里边的大部分属性都一样,我们还是以文字为例子,来看看Column布局。 一、Column基本用法 写一段代码,在column里加入三行文字,然后看一下效果。 import 'package:flutter/material.dart'; void main () => r...

dpl12的博客 1426

HandwrittenMathFormulaRecognition:基于YOLOv8的手写数学公式识别系统

输入:包含手写数学公式的图像(拍摄的板书、作业纸等)输出:对应的数字文本形式的数学公式(如LaTeX格式或文本表达式)标准的手写数学表达式数据集,包含在线轨迹及图片,广泛用于公式识别研究。包含近10万对公式图片及对应的LaTeX标注,适合训练公式识别模型。MathBrush公开手写数学公式图像数据集,含多种书写风格。手写数字与符号数据集(MNIST及其扩展)用于基础数学符号的训练。

YOLO 283

flutter布局-column 布局

Column 从今开始连载了,先来介绍下常用的不常用的widgets,从最简单的column开始。 1、mainAxisAlignment:主轴布局方式,column主轴方向是垂直的方向 mainaxis.png 默认值:MainAxisAlignment.start: start ,沿着主轴方向(垂直方向)顶部对齐; end,沿着主轴方向(垂直方向)底部对齐; center,...

一条咸鱼 5733

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Flutter:Row(水平布局),Column(垂直布局)

Row(水平布局),Column(垂直布局) 相当于 Android 中的 LinearLayout 的效果。 Row 水平布局是一种常用的布局方式,我们主要用Row组件来完成水平方向的排列, 对于 Row 来说,水平方向是主轴,垂直方向是次轴。示例代码如下: class MyApp extends StatelessWidget { // This widget is the root o...

Lud的博客 4047

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

flutter 内边距组件padding、水平组件Row、垂直组件Column、自适应组件Expanded、自适应占据空间组件Spacer()

内边距组件: 设置组件的内边距 Padding( padding:EdgeInsets.all(n), child:组件 ) 水平组件: 子组件全都水平排列 Row( mainAxisAlignment: MainAxisAlignment.spaceEvenly, 水平方向的布局方式,spaceEvenly元素与元素之间,首尾元素与父容器的距离均匀分配 cro...

weixin_43294560的博客 4034

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

Flutter开发 8.Widget-Row、Column、Icon

爪爪

xuanwenchao的专栏 1201

flutter 页面布局 Paddiing Row Column Expanded 组件

Flutter Paddiing 组件 在 html 中常见的布局标签都有 padding 属性,但是 Flutter 中很多 Widget 是没有 padding 属 性。这个时候我们可以用 Padding 组件处理容器与子元素直接的间距。 属性 说明 padd...

weixin_30764137的博客 276

Flutter笔记- Flutter的布局Widget(二)

多子布局组件 在开发中,我们经常需要将多个Widget放在一起进行布局,比如水平方向、垂直方向排列,甚至有时候需要他们进行层叠,比如图片上面放一段文字等; 这个时候我们需要使用多子布局组件(Multi-child layout widgets)。 比较常用的多子布局组件是Row、Column、Stack。 1. Flex组件 Row组件和Column组件都继承自Flex; Flex组件和Row、Column属性主要的区别就是多一个 direction; 当direction的值为Axis.horizont

南城同学的博客 2480

【Flutter 2-7】Flutter手把手教程UI布局和Widget——垂直布局控件Column

`Column`是在Flutter中常见的布局控件,它负责垂直方向布局。Row负责水平方向布局,二者都是继承于`Flex`,类似于`iOS`里面的`UIScrollView`,但是又有很多不同。

弗拉德的技术博客 897

【Flutter】Flutter 布局组件 ( 布局组件简介 | Row 组件 | Column 组件 | SizedBox 组件 | ClipOval 组件 )

一、Flutter 布局相关的组件简介、 二、Row 和 Column 组件、 三、SizedBox 组件、 四、ClipOval 组件、 五、 完整代码示例、 六、 相关资源

让 学习 成为一种 习惯 ( 韩曙亮 の 技术博客 ) 1401

Flutter之布局类Widget

原文博客地址: Flutter之布局类Widget 相关博客系列文章: Flutter和Dart系列文章 相关Demo地址: GitHub地址 布局类Widget都会包含一个或多个子widget,不同的布局类Widget对子widget排版(layout)方式不同 上一篇文章中提到: Widget实际上就是Element的配置数据, Widget的功能是描述一个UI元素的一个配置数据, 而真...

RunningKing 770

Flutter布局组件之线性布局组件Row和Column

线性布局(Row和Column) 所谓线性布局,即指沿水平或垂直方向排布子组件。Flutter中通过Row和Column来实现线性布局,类似于Android中的LinearLayout控件。Row和Column都继承自Flex。 主轴和纵轴 对于线性布局,有主轴和纵轴之分,如果布局是沿水平方向,那么主轴就是指水平方向,而纵轴即垂直方向;如果布局沿垂直方向,那么主轴就是指垂直方向,而纵轴就是水平方向...

m0_46369686的博客 943

Flutter 核心布局与高频组件实战指南

摘要: 本文系统介绍Flutter布局核心与高频组件实践。首先解析Widget树和布局约束机制,阐述父组件约束传递与子组件尺寸确定的原理。重点讲解Row/Column线性布局和Stack层叠布局的使用技巧,并提供完整代码示例。针对实际开发需求,详解Image图片组件(网络/本地资源加载)、ElevatedButton按钮(样式定制与事件处理)和TextFormField表单输入框(校验与交互)三大高频组件的实战应用。全文通过可视化示意图+可运行代码,帮助开发者快速掌握Flutter布局核心能力并落地项目开发

2501_93660328的博客 762

Flutter Widget之 Row、Column、Stack、IndexedStack等

上一篇博客我们了解了只有单个子控件的布局类控件。本篇博客我们来看一下包含多个子控件的布局类控件。 包含多个子控件的布局类控件

喻志强的博客 2574

Flutter开发日记——Flutter布局Widget详解(下)

Row 1、简介 Row组件是一个横向排布的布局组件,跟h5的Flex布局一样,只不过限定了横向排布 2、构造函数 Row({ Key key, MainAxisAlignment mainAxisAlignment = MainAxisAlignment.start, MainAxisSize mainAxisSize = MainAxisSize.max, CrossAxi...

点击置顶文章查看博客目录(全站式导航) 1411
上一篇: Flutter开发(七)—— 五种布局之Row Widget 水平布局
下一篇: Flutter开发(九)—— 五种布局之Stack Widget层叠布局
RedKeyer
博客等级 码龄11年 33粉丝 67原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值