请问ListView中refreshing在设置为true后是会导致onrefresh无效吗?

来源:4-1 ListView列表、下拉刷新、上拉加载的基本使用

Ruko丸

2017-04-08

求教两个问题 1请问refreshing这个属性(出现在2-1listview中) 是仅仅控制视图层面的东西是吗?我看到老师的演示里面 启动模拟器后 并没有手动下拉 就出现了加载界面 这个是不是只是一个界面而已 并没有触发到onRefresh事件? 2 然后老师设置了onLoad作为onRefresh的监听函数后手动下拉, 但是2s后并没有结束刷新。。。onLoad没有被调用,后来老师又在构造函数中手动调用了一遍onLoad.......我很疑惑为啥会这样 这是说明手动下拉后onRefresh仍然没有被触发咩??为啥呢??

写回答

1回答

CrazyCodeBoy

2017-04-08

  1. 我们可以通过控制RefreshControl的refreshing属性为true或false来让RefreshControl显示下拉刷新的头布局,接下来呢onRefresh会被回调,这个时候会执行this.onReload()方法,来加载数据。具体流程是:this.state.isLoading被改变为true -> refreshing 属性变为 true -> RefreshControl显示下拉刷新的头布局 -> onRefresh会被会调 -> 执行onReload方法加载数据。在构造方法中isLoading的默认状态为true,当RefreshControl第一次被渲染的时候,refreshing会变为true,所以会显示下拉刷新的布局呢。

  2. 当我们手动下拉ListView的时候RefreshControl组件的下拉刷新布局会显示,同时onRefresh会被回调,然后执行onReload的方法加载数据。

2
0

React Native技术精讲与高质量上线App开发

一个真实的上线项目,一次完整的开发过程,全面掌握React Native技术

1577 学习 · 727 问题

查看课程