0.6.2 • Published 6 years ago

@her-app/react-native-smartrefreshlayout v0.6.2

Weekly downloads
-
License
ISC
Repository
github
Last release
6 years ago

react-native-SmartRefreshLayout(完全可使用RN自定义的下拉刷新插件)npm version

基于android SmartRefreshLayout https://github.com/scwang90/SmartRefreshLayout 开发的插件,可提供类似ios的弹性刷新,如果你喜欢,请不要吝啬你的 :smile: star :smile:

ios自动刷新组件见react-native-MJRefresh

第一步

工程目录下运行 npm install --save react-native-smartrefreshlayout 或者 yarn add react-native-smartrefreshlayout(已经安装了yarn)

第二步

运行 react-native link react-native-smartrefreshlayout

第三部使用

在工程中导入:

import {SmartRefreshControl,ClassicsHeader,StoreHouseHeader,DefaultHeader} from 'react-native-smartrefreshlayout';

//使用方法和RN官方的RefreshControl类似,
<ScrollView 
  refreshControl={<SmartRefreshControl
     ref={refreshcontrol=>this.refreshControl=refreshcontrol}
     HeaderComponent={<DefaultHeader/>}
     onRefresh={()=>{
       setTimeout(()=>{
       this.refreshControl && this.refreshControl.finishRefresh();
       },1000)
     }}
  />}
>
</ScrollView>

组件

SmartRefreshControl

属性表格

属性名类型描述
onRefreshfunc刷新触发
onPullDownToRefreshfunc可下拉刷新时触发
onReleaseToRefreshfunc可释放刷新时触发
onHeaderPullingfuncheader下拉过程触发
onHeaderReleasingfuncheader释放过程触发
onHeaderReleasedfuncheader释放时触发
onHeaderMovingfuncheader移动时触发(包括下拉和释放过程)
enableRefreshbool是否启用刷新
headerHeightnumber设置Header的高度
primaryColorstring刷新控件主调色
autoRefresh{refresh,timeout}设置自动刷新
HeaderComponentComponentrefreshcontrol的header
pureScrollbool是否纯滚动
overScrollBouncebool是否越界回弹
overScrollDragbool是否使用越界拖动,类似IOS样式
dragRatenumber为(显示下拉高度/手指真实下拉高度=阻尼效果)
maxDragRatenumber最大显示下拉高度/Header标准高度

注意:HeaderComponet现在支持任意的RN组件,但是需要放在AnyHeader的组件中,其中onHeaderPulling、onHeaderReleasing和onHeaderMoving的参数为{nativeEvent:{percent,offset,headerHeight}},可用来控制下拉和释放过程中更为精细的动画 如果下拉和释放过程不需要过程动画,则使用onPullDownToRefresh和onReleaseToRefresh即可实现,请看示例:Example HuaweiRefreshControl

LottieRefreshControl

建议:该组件与lottie-react-native配合使用可获得绝佳的下拉动画效果

方法表格

方法名参数描述
finishRefresh{delayed:number,success:bool}完成刷新

AnyHeader

属性表格

属性名类型描述
primaryColorstring主题色

ClassicsHeader/DefaultHeader

属性表格

属性名类型描述
primaryColorstring主题色
accentColorstring强调色

StoreHouseHeader

属性表格

属性名类型描述
textstring文字(目前只支持英文)
textColorstring文字颜色
lineWidthnumber线宽

示例