Flutter项目入口文件
典型的Flutter项目目录结构通常如下面这样:
my_flutter_app/
├── android/ # Android 平台相关的代码和配置
├── assets/ # 资源文件(如图片、字体、配置文件等)
├── ios/ # iOS 平台相关的代码和配置
├── lib/ # Dart 代码的核心目录
│ ├── main.dart # 应用的入口文件
│ └── ...
├── test/ # 测试代码目录
├── pubspec.yaml # 项目的配置文件(依赖管理等)
├── pubspec.lock # 项目依赖的锁定文件(由 Flutter 自动生成)
├── README.md # 项目的说明文件
└── flutter_logo.png # Flutter 项目的默认图标
lib文件夹下的main.dart是应用的入口文件,包含应用的启动逻辑。
Flutter与Dart
Flutter和Dart是紧密相关的,二者是语言与框架的关系,Dart是Flutter的核心编程语言;Flutter是一个基于Dart的跨平台应用开发框架,它使用Dart语言作为开发语言,通过一组丰富的UI组件和工具,帮助开发者构建高性能的移动应用、Web应用和桌面应用。
Flutter中的Dart代码
在Flutter开发中,Dart代码用于构建用户界面、处理业务逻辑、与后端交互等,下面是简单的Flutter应用示例,展示了Dart代码在Flutter中的使用:
import 'package:flutter/material.dart';void main() {runApp(BleApp());
}
- 这是Dart语言的程序入口点,类似于其他语言中的main函数。当应用启动时,Dart会执行main函数中的代码。
- runApp()是Flutter框架提供的一个函数,用于启动Flutter应用,它的作用是将传入的组件(Widget)作为应用的根组件渲染到屏幕上。
- runApp()的参数必须是一个Widget,Flutter会将这个Widget作为应用的根节点,并构建整个UI树。
- BleApp是一个自定义的组件(Widget),是一个类的实例。
class BleApp extends StatelessWidget {Widget build(BuildContext context) {return MaterialApp(home: BleHome(),);}
}
- BleApp是一个自定义的Flutter组件,继承自StatelessWidget。
StatelessWidget
是Flutter中用于表示无状态组件的类,它的UI是不可变的,一旦构建完成,就不会在改变。- 如果应用不需要动态更新,StatelessWidget是一个简单且搞笑的选择。
@override
是一个注解,表示当前方法覆盖了父类中的同名方法,在这个BleApp类中
Flutter项目常用命令
确保Flutter环境正确安装
flutter doctor
如果环境有问题,flutter doctor会提示需要安装或者修复的内容,可以按照提示完成环境配置。
创建Flutter项目
flutter create my_app
my_app
是项目名称,必须全部使用小写字母,并且不能使用驼峰命名。
运行Flutter项目
flutter run
执行flutter run后,控制台会提示你选择一个目标环境运行(Windows、Android、Chrome等等)