Flutter基础 -- Flutter常用组件

Flutter 组件开发指南

目录

  1. 文本组件 Text
  2. 导入资源
  3. 图片组件 Image
  4. 图标组件 Icon
  5. 按钮组件
  6. 路由管理v1 Navigator
  7. 样式管理
  8. 手势事件
  9. 输入框 TextField

1. 文本组件 Text

Text Widget是Flutter中用于显示文本的基础组件,功能类似于Android的TextView或HTML的文本标签。

1.1 基础用法

dart 复制代码
Text('hello word!');

1.2 Text 定义

dart 复制代码
const Text(
  this.data,  // 要显示的文字内容
  {
    Key key,
    this.style,  // 文字显示样式和属性
    this.textAlign,  // 文字对齐方式
    this.textDirection,  // 文字显示方向
    this.maxLines,  // 最大显示行数
  }
)

1.3 Text 示例

dart 复制代码
Text('字体24下划线',
  style: TextStyle(
    color: Colors.blue,
    fontSize: 24,
    decoration: TextDecoration.underline,
  )
)

2. 导入资源

2.1 加入资源

在项目根目录下创建assets目录,然后按资源类型创建子目录。

编辑pubspec.yaml文件:

yaml 复制代码
flutter:
  assets:
    - assets/images/
    - assets/svgs/
    - assets/json/

3. 图片组件 Image

Image组件用于显示来自内存、本地、网络或Assets的图片。

3.1 基础用法

dart 复制代码
Image.asset('assets/images/logo.png')

4. 图标组件 Icon

Icon组件用于显示可缩放的矢量图标。

4.1 基础用法

dart 复制代码
Icon(
  Icons.campaign,
  size: 200,
  color: Colors.amber,
)

5. 按钮组件

5.1 ElevatedButton

dart 复制代码
ElevatedButton(
  onPressed: () {},
  child: Text('ElevatedButton'),
  style: ButtonStyle(
    backgroundColor: MaterialStateProperty.all(Colors.yellow),
  ),
)

6.1 基本路由跳转

dart 复制代码
Navigator.push(
  context,
  MaterialPageRoute(builder: (context) => DetailPage()),
);

7. 样式管理

7.1 ThemeData

dart 复制代码
MaterialApp(
  theme: ThemeData(
    primarySwatch: Colors.blue,
    appBarTheme: AppBarTheme(
      backgroundColor: Colors.green,
    ),
  ),
)

8. 手势事件

8.1 GestureDetector

dart 复制代码
GestureDetector(
  onTap: () => print('点击'),
  child: Container(color: Colors.amber),
)

9. 输入框 TextField

9.1 基础用法

dart 复制代码
TextField(
  decoration: InputDecoration(labelText: '用户名'),
  onChanged: (value) => print(value),
)

iOS开发助手AppUploader

在开发Flutter应用时,如果需要发布到App Store,可以使用AppUploader工具来简化上传流程。AppUploader是一款专业的iOS应用上传工具,可以帮助开发者快速完成应用打包、证书管理和上传工作。

主要功能

  1. 自动打包iOS应用
  2. 管理开发证书和描述文件
  3. 一键上传到App Store Connect
  4. 支持批量操作多个应用
  5. 提供详细的日志记录

使用AppUploader可以显著提高iOS应用发布效率,特别适合需要频繁更新应用的开发者。

注意:本文所有代码示例都已在Flutter 3.0环境下测试通过。在实际开发中,建议使用最新稳定版的Flutter SDK以获得最佳体验。

相关推荐
架构技术专栏7 分钟前
Agent 工具调用:从工具声明到执行反馈
前端·人工智能·后端
码事漫谈1 小时前
你让AI干的活,它可能只干了十分之一——而你根本看不出来
后端
Wx-bishekaifayuan1 小时前
express皖美特色农产品网售系统53118-计算机课程设计、毕业设计
人工智能·spring boot·后端·python·课程设计·express·旅游
Wx-bishekaifayuan2 小时前
springboot汉中旅游服务平台41442-计算机课程设计、毕业设计
spring boot·后端·python·django·课程设计·express·旅游
WeiXin_DZbishe2 小时前
基于springboot城市公交实时运营与调度系统-计算机毕设 附源码【课程设计】66173
java·vue.js·spring boot·后端·python·php·课程设计
WeiXin_DZbishe2 小时前
基于Springboot+AI的kuall音乐广场的设计与实现-计算机毕设 附源码【课程设计】12715
vue.js·人工智能·spring boot·后端·python·php·课程设计
A接拉起0073 小时前
2026 年 JavaScript 开发者需要了解的知识
前端·javascript·后端
Bazingga3 小时前
RAG评测体系保姆级教程:生产级实践指南
后端
tachibana24 小时前
使用for range 的时候,它的地址会发生变化吗?
开发语言·后端·golang·go·语法
蜗牛互联网4 小时前
GPT-6 与 Intelligent UI:从回答到可审计操作的产品迁移
java·人工智能·后端