React-Native 开发阵营ReactNative系列React Native开发

React Native中监听ScrollView滑到底部事件监

2017-11-15  本文已影响114人  8ba7c349861d

最近项目中需要判断ScrollView滑动到底部的状态,查询了部分资料,在此做一次记录。
原文:http://blog.csdn.net/sinat_17775997/article/details/76598752

首先找到ScrollView 中滑动结束后触发的函数 可以找到
onMomentumScrollEnd这个函数,中文网的描述

onMomentumScrollEnd?: function

滚动动画结束时调用此函数。
          < ScrollView
            style={{flex:1}}
            onRefresh = {this._onRefreshData}
            onMomentumScrollEnd = {this._contentViewScroll}
            refreshing={this.state.refreshing}
            automaticallyAdjustContentInsets={false}
            showsVerticalScrollIndicator={false}
            scrollsToTop={true}>
            {<View/>}
          </ScrollView >

我们需要知道当前ScrollView中 滑动的距离, contentOffset.y contentSize.height ScrollView 高度,三个变量来确定当前有没有滑动到底部。好在事件中都具有这些属性

    _contentViewScroll(e: Object){
        var offsetY = e.nativeEvent.contentOffset.y; //滑动距离
        var contentSizeHeight = e.nativeEvent.contentSize.height; //scrollView contentSize高度
        var oriageScrollHeight = e.nativeEvent.layoutMeasurement.height; //scrollView高度
        if (offsetY + oriageScrollHeight >= contentSizeHeight){
            Console.log('上传滑动到底部事件')
        }
    }
上一篇下一篇

猜你喜欢

热点阅读