记录一下最近使用Flutter控件的坑
1.水波纹
使用Material,里面使用InkWell,控件颜色给Material的属性设置,否则在里面设置的话水波纹可能被遮挡。
如果直接使用FlatButton当作容器的话,这个控件有默认的padding,即使我手动设置为0也不行,我也没去深究原因。
2.ListView和GridView需要放到Expanded里,否则这个控件的父容器不知道怎么给他们设置高度
3.输入框TextField的decoration属性的prefixIcon属性,相当于Android的drawableLeft属性,直接设置图片的话系统会重新设置最小宽高,最小宽高是48px,使用的时候一般把该属性设置为有padding容器然后把图片再放容器,然后改变padding属性就可以缩小图片。或者直接放到Row里不设置padding属性也可以,我也比较迷。。。
4.Navigator.pushNamed报错,
原因看这里,看RémiRousselet说的:
https://stackoverflow.com/questions/44004451/navigator-operation-requested-with-a-context-that-does-not-include-a-navigator
context必须是MaterialApp的context,或者使用Builder
5.GestureDetector空白点击不响应
使用GestureDetector(behavior: HitTestBehavior.translucent)
先记录一些