Refresh(下拉刷新组件)
大约 1 分钟约 397 字
Refresh(下拉刷新组件)
用于在ListView 中实现下拉刷新的功能
属性
除了支持所有基础属性,还支持以下属性:
refreshEnable
是否启用下拉刷新,默认为 true
| 属性名 | 描述 | 类型 |
|---|---|---|
| refreshEnable | 是否启用下拉刷新 | Boolean |
实例属性
以下 contentInsetTopWhenEndDrag、refreshState 是 RefreshView 实例上的属性,需通过 ref 拿到实例后访问,不能在 attr {} 中设置。其中 contentInsetTopWhenEndDrag 仅用于设置;refreshState 用于读取当前状态,切换刷新状态请使用 beginRefresh / endRefresh。
contentInsetTopWhenEndDrag
当松开手指后,下拉刷新回到初始位置时,列表的内容边距
| 属性名 | 描述 | 类型 |
|---|---|---|
| contentInsetTopWhenEndDrag | 边距 | Float |
refreshState
当前刷新状态,接收 RefreshViewState 枚举
RefreshViewState
| 枚举值 | 描述 |
|---|---|
| IDLE | 普通闲置状态 |
| PULLING | 松开就可以进行刷新的状态 |
| REFRESHING | 正在刷新中的状态 |
Refresh {
...
attr {
...
refreshEnable = true
...
}
}
事件
refreshStateDidChange
监听下拉刷新状态变化事件,回调参数为 RefreshViewState 类型
RefreshViewState
| 值名 | 描述 |
|---|---|
| IDLE | 空闲状态,即未下拉 |
| PULLING | 松开就可以进行刷新的状态 |
| REFRESHING | 正在刷新中的状态 |
pullingPercentageChanged
监听下拉百分比变化事件,该方法接收类型为(handler: (percentage01: Float) -> Unit)闭包,闭包回调参数为 Float 类型,范围在0~1之间
| 属性名 | 描述 | 类型 |
|---|---|---|
| percentage01 | 下拉百分比变化 | Float |
方法
beginRefresh
手动开始下拉刷新
| 参数 | 描述 | 类型 |
|---|---|---|
| animated | 是否需要动画,默认 true | Boolean |
endRefresh
结束下拉刷新,无参数