创建flutter工程
打开Android studio(简称AS)>File>New>New Flutter Project 一路Next就可以
运行Flutter App 或者在终端中执行flutter run
运行到手机上如下
工程介绍
Flutter项目主要分为Android,iOS,lib,pubspec.yaml这四个,其中lib下就是用来flutter开发的,我们的dart文件就放在这里,pubspec.yaml文件就是flutter的构建管理工具,就跟gradle中的build.gradle一样。
Fluter简介
void main() {
runApp(new MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: const MyHomePage(title: 'Flutter Demo Home Page'),
);
}
}
class MyHomePage extends StatefulWidget {
const MyHomePage({Key? key, required this.title}) : super(key: key);
final String title;
@override
State<MyHomePage> createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
int _counter = 0;
void _incrementCounter() {
setState(() {
_counter++;
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text(widget.title),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
const Text(
'You have pushed the button this many times:',
),
Text(
'$_counter',
style: Theme.of(context).textTheme.headline4,
),
],
),
),
floatingActionButton: FloatingActionButton(
onPressed: _incrementCounter,
tooltip: 'Increment',
child: const Icon(Icons.add),
),
);
}
}
入口函数
在这里插入代码片
void main() => runApp(MyApp());
或者
void main() {
runApp(MyApp());
}
MyApp()相当于new MyApp(),创建对象时new关键字可以省略 runApp接受的是Widget,MyApp继承了StatelessWidget,flutter中的Widget分为StatelessWidget(无状态)和StatefulWidget(有状态),当你需要根据数据来动态更新试图就需要使用StatefulWidget,否则使用StatelessWidget。
MyApp的build返回Widget,其实返回的是MaterialApp,MaterialApp负责管理整个app的一些信息和属性 这里我们先不去过多了解其中的内容,等后面基础内容学习完成后,对flutter有个较为完整的认识后再来深入了解,目前只需要先了解title,home,routes三个属性就可以了
title:不需要什么解释了
home:你的主页面,接收一个Widget
routes:路由表,接收Map<Srtring,WidgetBuilder>,用于页面跳转使用,当然关于路由的用法是非常多的,这个暂时先不讲,后面会主们对路由使用做一个综合性讲解,目前只要学会一种方式即可。
|