flutter config –android-studio-dir=C:\ProgramGreen\Android\android-studio_4.1.2
App 设置了全局 Locale 的话, 需要对 Widgets/Material/Cupertino 配置 localizationsDelegates, (若使用到对应的Widget) 如果没有配置会在使用到时出现异常
当遇到类名相同时, import
时使用 as
设置别名
import 'package:date_format/date_format.dart' as format; // Local类可能与Flutter原生冲突
format.formatDate()
当 PageView 里面嵌套 TabBarView, 停留在 TabBarView 所在 PageView 对应 index 页面时 默认 TabBarView 会消费触摸滑动事件, 即使滑动到最后一个也不会释放给外层
在 BottomNavigationBar 只需要在构造传入参数 currentIndex 即可, 但 PageView 需要在代码设置 index animateToPage 或 jumpToPage
解决: 添加一层 Flexible/Expanded 即可自动换行, 如果Text外还有Column, 加在Column外层
json_serializable
1.添加依赖
//pubspec.yaml
dependencies:
json_annotation: ^3.1.1
dev_dependencies:
build_runner: ^1.11.1
json_serializable: ^3.5.1
2.利用插件生成 entity 代码
3.使用命令生成帮助类, 执行后可能要等几秒
flutter packages pub run build_runner build --delete-conflicting-outputs
注意1: build_runner
不能放在依赖的 module, 否则 build_runner
命令无效
注意2: json_serializable
不能放在依赖的 module, 否则不会生成 xx.g.dart
文件
1.传参为String时, 转译字符不能正常解析,
可传参为Map解析,dio返回response的dynamic是map不是string
2.convert库json不能解析Map类型, 需要手动处理
(2022-04 更新)
仓库要关闭了,Android 项目 build.gradle 中替换掉 jcenter()
就好了
替换国内镜像,或者别的仓库
flutter create .
重新创建flutter时 可能会更新库的版本,从而会导致兼容问题报错创建后 报错后 discard 恢复代码到原来的版本 直接执行 flutter build xxx
引入方式改为git方式
flutter_screenutil:
git:
url: https://pub.dev/packages/flutter_screenutil.git
ref: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx