加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 业界 > 正文

Flutter 开发中的一些 Tips

发布时间:2019-06-22 15:18:12 所属栏目:业界 来源:唯鹿lv-2
导读:进修Flutter也有一阵子了。闲着没事,用了公司一个已经凉凉的App计划图来练手。虽然了接口不行能用的了,以是都是些死数据,实现结果可以说是很美满了(获得了计划的承认。。。)。虽然本身也是边查边写,也小心了很多Github上优越的Flutter项目。此刻开源出

InkWell有的叫溅墨结果,有的叫水波纹结果。行使场景是给一些无点击变乱的部件添加点击变乱时行使(也支持长按、双击等变乱),同时你也可以去修改它的颜色和外形。

  1. InkWell( 
  2.   borderRadius: BorderRadius.circular(8.0), // 圆角 
  3.   splashColor: Colors.transparent, // 溅墨色(波纹色) 
  4.   highlightColor: Colors.transparent, // 点击时的配景致(高亮色) 
  5.   onTap: () {},// 点击变乱 
  6.   child: Container(), 
  7. ); 

不外偶然你会发明并不是包一层InkWell就必然会有溅墨结果。首要缘故起因是溅墨结果是在一个配景结果,并不是包围的远景结果。以是InkWell中的child一旦有配置配景图或配景致,那么就会遮住这个溅墨结果。假如你必要这个溅墨结果,有两种方法实现。

(1)包一层 Material,将配景致配置在 Material中的color里。

  1. Material( 
  2.   color: Colors.white, 
  3.   child: InkWell(), 

(2)行使Stack机关,将InkWell安排在上层。这种合用于给图片添加点击结果,好比Banner图的点击。

  1. Stack( 
  2.             children: [ 
  3.               Positioned.fill( 
  4.                 child: Image(), 
  5.               ), 
  6.               Positioned.fill( 
  7.                 child: Material( 
  8.                   color: Colors.transparent, 
  9.                   child: InkWell( 
  10.                     splashColor: Color(0X40FFFFFF), 
  11.                     highlightColor: Colors.transparent, 
  12.                     onTap: () {}, 
  13.                   ), 
  14.                 ), 
  15.               ) 
  16.             ], 
  17.           ) 

8.保持页面状态

好比点击导航栏往返切换页面,默认环境下会丢失原页面状态,也就是每次切换城市从头初始化页面。这种环境办理要领就是PageView与BottomNavigationBar团结行使,同时子页面State中担任AutomaticKeepAliveClientMixin并重写wantKeepAlive为true。代码大抵如下:

  1. class _TestState extends State with AutomaticKeepAliveClientMixin{ 
  2.  
  3.   @override 
  4.   Widget build(BuildContext context) { 
  5.     super.build(context); 
  6.     return Container(); 
  7.   } 
  8.    
  9.   @override 
  10.   bool get wantKeepAlive => true; 

9.依靠版本题目

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读