坑🕳小问题集合
1、创建一个List,通过循环向其中添加组件,该List需要初始化,不初始化会报错
image.png
2、文本设置溢出显示省略号和最大行数(设置行高使用height属性)
title: new Container(
padding: EdgeInsets.symmetric(horizontal: 8.0),
child: new Text(
'文本内容',
overflow: TextOverflow.ellipsis, // 显示省略号
maxLines: 3, // 最大行数为3行
),
),
3、通过new ClassName()将class ClassName extend StatefulWidget{} 创建的转化成控件(Widget)
4、不能通过new ClassName()将class ClassName extend StatelessWidget{
return new Appbar();
} 创建的AppBar控件
原因:
image.png
解决办法:
一、
Widget FnName(
return new Appbar();
)
二、
/* 设置自定义appbar 大佬教的,没试过*/
class MyAppBar extends AppBar{
@override
Size get preferredSize => super.preferredSize;
}
5、自定义一个buttomSheet的思路,点击按钮新建一个路由,在这个路由中自定义bottomSheet的样式和动画,通过Navigator.pop(context),隐藏bottomSheet
6、flutter在vsc进行调试F5,关闭调试Shift+F5
7、flutter在vsc重新允许运行性Ctrl+F5
8、flutter在vsc中打断点F9
9、在Android stu上查看视图
image.png
10、Scaffold 中的resizeToAvoidBottomPadding: 控制界面内容 body
是否重新布局来避免底部被覆盖了,比如当键盘显示的时候,重新布局避免被键盘盖住内容。默认值为 true。
11、 Android沉侵式标题栏顶部叠加层去除
12、修改status bar
SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle.dark.copyWith(
statusBarColor: Colors.blue, //or set color with: Color(0xFF0000FF)
));
image.png
13、
a、使用json_serializable 包需要要引入这三个包
b、在https://caijinglong.github.io/json2dart/index_ch.html 进行JSON格式转换成Dart代码
c、flutter 转json 自动生成命令
一次性生成:flutter packages pub run build_runner build
持续生成:flutter packages pub run build_runner watch
14、输入框始终在键盘上方布局
https://github.com/OpenFlutter/Flutter-Notebook/blob/master/mecury_project/example/animation_challenge/lib/screens/im_demo.dart