环境搭建
- 下载flutter sdk
https://flutter.dev/docs/get-started/install
如果不能科学翻墙,最好配个镜像
$export PUB_HOSTED_URL=https://pub.flutter-io.cn
$export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
2.下载安装android studio(当然也可以用其它IDE),然后安装flutter开发相应插件,File-Setting-Plugins,搜索dart,flutter两个插件,安装后restart
3.指定flutter sdk目录到环境变量path
export PATH="$PWD/flutter/bin:$PATH"
运行,检测flutter运行环境
flutter doctor
检测有问题如图中会有叹号提示,按要求修改就好
image.png
一切没有问题,就可以开始你的flutter之旅啦。
Dart语法
参考 //www.greatytc.com/p/9e5f4c81cc7d
flutter基础
flutter架构图
正如flutter介绍开头描述的那一句,Everything’s a Widget!Flutter所有都是由简单碎片的widgets拼接起来。
image.png
flutter知识图谱
Flutter.png
widgets认识
flutter widget渲染机制
image.png
image.png
widgets小部件索引
Flutter-Widgets整理.png
widgets生命周期
image.png
路由跳转
数据绑定
网络
图片资源
Flutter遵循简单的基于密度的格式,如iOS。assets
可能是1.0x
, 2.0x
,3.0x
,或任何其他乘数。虽然Flutter
中没有dp
的概念。但是同样使用的是逻辑像素,它们与设备无关的像素基本相同。MediaQuery
中的 devicePixelRatio
表示单个逻辑像素中的物理像素的比率。
Android density qualifier | Flutter pixel ratio |
---|---|
ldpi | 0.75x |
mdpi | 1.0x |
hdpi | 1.5x |
xhdpi | 2.0x |
xxhdpi | 3.0x |
xxxhdpi | 4.0x |
放置的项目如下图
images/my_icon.png // Base: 1.0x image
images/2.0x/my_icon.png // 2.0x image
images/3.0x/my_icon.png // 3.0x image
之后,它会自动拷贝到对应的android或者ios的项目文件夹中。
参考文档:
- https://flutter.dev/docs/get-started/codelab
- //www.greatytc.com/p/9e5f4c81cc7d
- https://flutter-io.cn/
工具集合
- flutter插件搜索库
https://pub.dartlang.org/flutter - flutter json模板生成工具
https://github.com/debuggerx01/JSONFormat4Flutter
https://caijinglong.github.io/json2dart/index_ch.html - flutter工具集合
https://github.com/crazycodeboy/awesome-flutter-cn/blob/master/README.md - flutter常用插件
flutter
dart
flutter intl
FlutterJsonBeanFactory
JsonToDart(JSON To Dart)