Flutter学习记录
目录
上手/入门 A tour of Flutter
分类 | 标题 | 介绍 | 传送门 |
---|---|---|---|
UI/UX | Flutter Widget of the Week | 展示一些Widget基本功能, 超短视频,有个印象! | 地址 |
汇总 | Dart’s Flutter Framework Study | 学习资料大集合,并介绍了如何在不同的页面上保持状态(BottomNavigationBar) | 地址 |
基本功 Dart
指引&指导 Guide
Widget/UI输入框 InputWidget
异步操作 Asynchronous : Future & async/await
JSON序列化 JSON Serialization
存储&读写文件 File I/O
- Reading and Writing Files - Flutter
- Flutter知识点:数据存储之sqflite - Android - 掘金
- Flutter中的本地存储 | Flutter开发者
- 页面跳转 Route/Navigator/…
- Flutter中的路由跳转 | Flutter开发者
未分类 Others
工具链 DevToolsChain
插件 Useful Plugin/Package
本地存储/持久化 Local Storage/Data Persistence
状态管理 State Management
原生交互 Native Interaction
未分类 Others
- (Flutter暂时使用不了)dartson | Dart Package
优秀仓库 Git Repository
- zhujian1989/flutter_study: flutter知识点学习与实战,问题解决方案记录
- GSYGithubAppFlutter/main.dart at master · CarGuo/GSYGithubAppFlutter
- brianegan/flutter_architecture_samples: TodoMVC for Flutter
- flutter_architecture_samples
- ice1000/code_wars_android: A mobile client for CodeWars
学习资料参考 Study Reference
- Asynchronous Programming: Futures | Dart
- Dart 2 | Dart
- Dart Code - Dart & Flutter support for Visual Studio Code
- Dart: 用于创建结构化的web应用
- Dart1.x 编程语言中文网 | Dart
- Effective Dart|Dart
- Flutter - Dart API docs
- Solido/awesome-flutter-
- Technical videos - Flutter
- Fltr::Dart1.x
- Fltr::Dart1.x
- Fltr::Dart2
- Google Codelabs
- Flutter Codelabs
- flutter simple samples
- Flutter 社区中文资源
- Flutter SDK Archive - Flutter
- Flutter中文网
- Testing Flutter Apps - Flutter
- Flutter开发者
- FAQ - Flutter
- Flutter 布局控件完结篇 - 掘金
- Flutter在混合项目中的构建和集成 - 掘金
- Language Tour | Dart
- Newest ‘flutter’ Questions - Stack Overflow
- Proxy pattern - Wikipedia
素材/设计工具 Assets/Design Tools
- Gallery
- Color Tool - Material Design
- Theme Editor Home - Material Design
- The color system - Material Design
- Homepage - Material Design
- Google Fonts
- Noun Project - Icons for Everything
- Beautiful Free Images & Pictures | Unsplash
一些问题 Some Problems
- 这是陨石坑儿(未整理)
- flutter_gallery_assets cannot use alternate storage locations · Issue #13763 · flutter/flutter
- Android App Gradle编译 key.properties (没有那个文件或目录)
- Using Flutter in China · flutter/flutter Wiki
踩过的坑:
BottomNavigation(底部选项卡)无法保持各个页面状态,这不符合直觉
方案一
关键类 : PageStorageKey, PageStorageBucket
示例代码 :
关键代码 :
final PageStorageBucket bucket = PageStorageBucket();
//...
return Scaffold(
body: PageStorage(
child: currentPage,
bucket: bucket,
),
//...
PageStorage.of(context).writeState(context, b,
identifier: ValueKey(
'${widget.dataList[index].id}',
));
- 注意点 : 每个新的继承
StatefulWidget
,StatelessWidget
或自定义Widget的新的Widget,要提供Key
的构造参数并调用super(key:key),以确保框架提供相应支持
class MyWidgetOrPage extend StatelessWidget{
MyWidgetOrPage(Key key, {...}):super(Key:key);
//...
}
class MyWidgetOrPage extend StatefulWidget{
MyWidgetOrPage(Key key, {...}):super(Key:key);
//...
}
//...