前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Flutter版本玩Android(2)——主页面数据获取

Flutter版本玩Android(2)——主页面数据获取

作者头像
用户1108631
发布2019-08-17 12:30:31
7820
发布2019-08-17 12:30:31
举报

上一部分构造了主页面,这一部分主要完成主页面三个tab的数据获取,下一步的点击事件目前都未处理。

先看下效果:

使用的库

这部分接入了几个三方库,分别是:

  • 网络库:Dio,这部分封装了一个单例出来,负责网络请求
  • 首页轮播图:BannerView
  • json序列化:json-serializable,这部分需要注意如何生成辅助代码,可以参考后面的example
  • 首页下拉刷新、上拉加载:pulltorefresh

state管理

对于首页tab,使用了pulltorefresh控件;对于知识体系和公众号tab,都使用了自身的管理,定义了三种状态,LOAD、SHOW以及ERROR,根据不同state加载不同内容。 大体结构如下代码:

@override  Widget build(BuildContext context) {    return Container(      child: _createBody(),    );  }
  Widget _createBody() {    switch (_page_state) {      case PAGE_STATE.STATE_LOAD:        return Center(          child: CircularProgressIndicator(),        );      case PAGE_STATE.STATE_ERROR:        return Center(          child: RaisedButton(            onPressed: () {              _fetchWeChat();            },            child: Text('出错了,请重试'),          ),        );
      case PAGE_STATE.STATE_SHOW:        return _createShowBody();    }  }

代码

关于代码,可以参考: https://github.com/wangli135/wan_android/tree/07733ad17d02acc048925355a874c20004c96f94

参考

  • json-serializable example
  • pull to refresh
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-08-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 每天学点Android知识 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 使用的库
  • state管理
  • 代码
  • 参考
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档