打开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一样。
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 createState() => _MyHomePageState();
}
class _MyHomePageState extends State {
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: [
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。(例如文本Text控件 如果在创建初始化的时候设置内容,后续不更改则使用StatelessWidget,如果需要根据逻辑更改文本内容就需要使用StatefulWidget)
MyApp的build返回Widget,其实返回的是MaterialApp,MaterialApp 是Material 库中提供的 Flutter APP 框架,通过它可以设置应用的名称、主题、语言、首页及路由列表等。MaterialApp也是一个 widget。
这里我们先不去过多了解其中的内容,等后面基础内容学习完成后,对flutter有个较为完整的认识后再来深入了解,目前只需要先了解title,home,routes三个属性就可以了
title:不需要什么解释了
home:你的主页面,接收一个Widget
routes:路由表,接收Map
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)