android目录:andriod资源文件
build:运行项目时,生成编译目录
ios:ios资源文件
lib:自己编写代码的目录,自己的资源
test:报测试文件
pubspec.yaml:项目配置文件,项目名称,描述,项目需要的各种依赖,一般存放第三方库的依赖
如果使用第三方库,需要在dependencies中配置第三方库
自动执行**flutter package get**把远方的库下载下来
## Flutter入口文件和入口方法
main.dart是flutter的入口文件
~~~
void main()=> runApp(MyApp());
~~~
main方法是dart的入口方法,runApp是flutter的入口方法,MyApp是自定义的一个组件。
flutter中所以的组件都是类。
~~~
import 'package:flutter/material.dart';
void main(){
runApp(new Center(
child: Text(
"123458frGCEREREDDDFFFerererF",
textDirection: TextDirection.rtl
),
));
}
~~~
**dart中实例化时new关键字可以省略**
内置组件就是一个类
一个组件会很大,放在参数中是不合理的,因此需要自定义组件。
~~~
// 自定义组件,创建一个类
// StatelessWidget:无状态组件,状态不会变化的Widget
// StatelessWidget是一个抽象类, 里面有一个build的抽象方法,需要实现抽象类的抽象方法
// 抽象类不能被实例化,需要通过继承的方法让子类实例化
class MyApp extends StatelessWidget{
@override
// build 返回Widget
Widget build(BuildContext context){
return Center(
child: Text(
"123456",
textDirection: TextDirection.rtl,
style: TextStyle(
fontSize: 40.0,//double类型
// color: Colors.yellow
// fromRGBO (r, g, b, opacity)
color: Color.fromRGBO(244, 233, 121, 0.5)
),
),
);
}
}
~~~
## MaterialApp组件和Scaffold**装饰组件**
### MaterialApp
MaterialApp:是一个方便的Widget,封装了应用程序Material Design所需要的一些Widget,一般作为顶层widget使用。
常用属性:
home(主页):传入的是页面信息
title(标题):
color(颜色):
theme(主题):
routes(路由):
### scaffold
Scaffold是Material Design布局结构的基本实现,此类提供了用于显示的drawer,snackbar和底部sheet的API
主要属性:
appBar:显示界面顶部的一个AppBar(导航)
body:当前界面所显示的主要内容Widget
drawer:抽屉菜单控件
~~~
import 'package:flutter/material.dart';
void main(){
runApp(MyApp());
}
// 自定义组件,创建一个类
// StatelessWidget:无状态组件,状态不会变化的Widget
// StatelessWidget是一个抽象类, 里面有一个build的抽象方法,需要实现抽象类的抽象方法
// 抽象类不能被实例化,需要通过继承的方法让子类实例化
class MyApp extends StatelessWidget{
@override
// build 返回Widget
Widget build(BuildContext context){
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('Flutter demo')
),
body: HomeContent(),
),
theme: ThemeData( //主题
primarySwatch: Colors.yellow
),
);
}
}
class HomeContent extends StatelessWidget{
@override
Widget build(BuildContext context) {
// TODO: implement build
return Center(
child: Text(
"1234567",
textDirection: TextDirection.rtl,
style: TextStyle(
fontSize: 40.0,//double类型
// color: Colors.yellow
// fromRGBO (r, g, b, opacity)
color: Color.fromRGBO(244, 233, 121, 0.5)
),
),
);
}
}
~~~
- 空白目录
- Flutter入门
- 课程简介
- 开发环境搭建
- 常用组件讲解
- 案例实战
- Dart编程语言入门
- 介绍和开发准备
- 数据类型
- 运算符
- 控制流语句
- 方法
- 面向对象1
- 面向对象2
- 枚举&类型
- Flutter中文网
- Widget框架总览
- 在Flutter中构建布局
- Flutter for Web开发者
- Flutter入门实战
- flutter介绍
- Flutter目录结构,各种组件
- Container、Text
- 图片组件Image
- ListView
- 动态组件
- GridView组件
- 页面布局Padding,Row,Column,Expanded,Icon
- Stack层叠组件,Align,Positioned
- AspectRatio,Cart
- wrap组件
- 组件汇总
