当前位置: 首页 > web >正文

Flutter基础()

导航栏

appBar: AppBar()

title: const Text('搜索')  //标题
backgroundColor: Colors.blue   //背景颜色
centerTitle: true //标题居中

leading 属性

作用
放置在应用栏左侧的控件,通常是一个图标按钮,用于导航或打开菜单。

AppBar(leading: IconButton(icon: Icon(Icons.menu),onPressed: () {Scaffold.of(context).openDrawer(); // 打开侧边栏},),
)

actions 属性

作用
放置在应用栏右侧的一组控件,通常是图标按钮,用于展示常用操作。

AppBar(actions: [IconButton(icon: Icon(Icons.search),onPressed: () {// 打开搜索功能},),IconButton(icon: Icon(Icons.more_vert),onPressed: () {// 打开更多选项菜单},),],
)

123


body

居中

Scaffold(appBar: AppBar(title: Text('标题')),body: Center(child: Text('这是主要内容'),),
);

垂直布局(Column)

  • MainAxisAlignment.start:子组件在主轴方向上对齐到起始位置。

  • MainAxisAlignment.end:子组件在主轴方向上对齐到结束位置。

  • MainAxisAlignment.spaceAround:子组件之间有等间距,但第一个和最后一个子组件与容器边缘的间距是其他间距的一半。

  • MainAxisAlignment.spaceBetween:子组件之间有等间距,但第一个和最后一个子组件分别对齐到容器的起始和结束位置。

  • MainAxisAlignment.spaceEvenly:子组件之间和子组件与容器边缘的间距都相等。

左边

Scaffold(body: Column(mainAxisAlignment: MainAxisAlignment.center,   //mainAxisAlignment:这是 Row 或 Column 布局组件中的一个属性,用来指定子组件在主轴方向上的对齐方式。children: [Text('标题'),SizedBox(height: 16),ElevatedButton(onPressed: () {},child: Text('按钮'),),],),
);

居中

body: Center(child: Column(mainAxisAlignment: MainAxisAlignment.center,children: [Text('标题'),SizedBox(height: 66),ElevatedButton(onPressed: () {},child: Text('按钮'),),],),
)

123

SizedBox
Column(children: [Text('标题'),SizedBox(height: 16),Text('内容'),],
)

效果Text('标题')Text('内容') 之间会有一个高度为 16 像素的垂直间距。

水平布局(Row)

Scaffold(body: Row(mainAxisAlignment: MainAxisAlignment.spaceEvenly,children: [Icon(Icons.star, size: 48),Icon(Icons.star, size: 48),Icon(Icons.star, size: 48),],),
);

居中

return Scaffold(appBar: AppBar(title: const Text('个人中心')),body: Center(child: Row(mainAxisAlignment: MainAxisAlignment.spaceEvenly,children: [Icon(Icons.star, size: 48),Icon(Icons.star, size: 48),Icon(Icons.star, size: 48),],)),);

容器

Scaffold(body: Container(padding: EdgeInsets.all(16), //意思就是容器内 空白16个像素点 空格 设置内边距为上下左右各16像素child: Column(crossAxisAlignment: CrossAxisAlignment.start, // 子组件在水平方向上对齐到起始位置children: [Text('标题', style: TextStyle(fontSize: 24)), // 显示标题,字体大小为24SizedBox(height: 16), // 添加一个高度为16像素的垂直间距Expanded( // 让子组件(ListView)占据剩余空间child: ListView(children: [ListTile(title: Text('项目 1')), // 列表项1ListTile(title: Text('项目 2')), // 列表项2ListTile(title: Text('项目 3')), // 列表项3],),),],),),
);

123

http://www.xdnf.cn/news/5423.html

相关文章:

  • Qt 中 QWidget涉及的常用核心属性介绍
  • 《AI大模型应知应会100篇》第57篇:LlamaIndex使用指南:构建高效知识库
  • 5.11y打卡
  • 缓存(3):本地缓存作用 及 数据一致性 实现策略
  • upload-labs靶场通关详解:第五关
  • Linux基础(vim编辑器)
  • 自然语言处理与BI融合实战:ChatBI动态语义解析技术架构剖析
  • 基于去中心化与AI智能服务的web3钱包的应用开发的背景描述
  • 【Linux网络】HTTP
  • 【GESP真题解析】第 19 集 GESP 二级 2025 年 3 月编程题 1:等差矩阵
  • X.509证书详解
  • 蓝桥杯14届 数三角
  • 【每日一题 | 2025年5.5 ~ 5.11】搜索相关题
  • [Java实战]Spring Boot 解决跨域问题(十四)
  • 深入探索 RKNN 模型转换之旅
  • llama.cpp初识
  • iVX 平台技术解析:图形化与组件化的融合创新
  • Qt模块化架构设计教程 -- 轻松上手插件开发
  • Vivado中可新建的工程类型解析
  • 招行数字金融挑战赛数据赛道赛题一
  • Java并发编程常见问题与陷阱解析
  • 基础框架搭建流程指南
  • 互联网大厂Java面试实战:从Spring Boot到微服务的技术问答与解析
  • JavaWeb, Spring, Spring Boot
  • LabVIEW车牌自动识别系统
  • E+H流量计通过Profibus DP主站转Modbus TCP网关与上位机轻松通讯
  • Qwen-2.5 omni
  • 浏览器的B/S架构和C/S架构
  • C# Newtonsoft.Json 使用指南
  • STM32学习记录——点灯