FlatList组件添加上拉,下拉刷新

先看个效果:


FlatList刷新.gif

假设数据源: dataSource; 主要看onRefresh, ListFooterComponent.
注: 头部刷新时, 需要更新 refreshing的状态(true/false)

render() {
    return (
        <View style={styles.container}>
           <FlatList
               data={dataSource}
               renderItem={({item})=>this.renderItem(item)}
               onRefresh={this.onRefresh}
               refreshing={isRefreshing}
               ListFooterComponent={this._renderFooter}
               onEndReached={this._onEndReached}
               // 注意此参数是一个比值而非像素单位。比如,0.5 表示距离内容最底部的距离为当前列表可见长度的一半时触发(0---1之间)
               onEndReachedThreshold={0.1}
               keyExtractor={(item, index)=>`${item.item_id}-${index}`}
           />
        </View>
    );
}

// 头部刷新
onRefresh = ()=>{
  isRefreshing = true;
  // 做请求
};

// 尾部加载更多
_renderFooter = ()=>{
  return(
      <FooterLoadMore
          // isNoMore: 是否还有数据可加载
          isNoMore={isNoMore}
      />
  );
};
FooterLoadMore自定义组件:
image.png
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,338评论 19 139
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 47,232评论 6 342
  • 转载请标明出处: http://www.jianshu.com/p/1f94411af33d 本文出自:【江清清博...
    IT领域分享阅读 2,115评论 0 5
  • 赚钱的方式有很多,如果让我选择,那么我会义无反顾地选择正大光明地赚钱,堂堂正正,心安理得。 “做公益,就要纯粹,做...
    德合阅读 1,083评论 0 0
  • 自从接了弟弟的电话,一直都没缓过劲来。 本没什么事,但话筒那头的愤怒,像刀子一样深深的刺伤了我,从来不曾有这么伤心...
    屠二阅读 155评论 0 0

友情链接更多精彩内容