ScrollView中的WebView在一直刷起React Native Android时调用refreshControl

时间:2018-05-28 17:11:11

标签: android react-native webview scrollview pull-to-refresh

我在React Native应用程序的ScrollView中有一个WebView。 ScrollView具有refreshControl prop,因此当我到达应用程序的顶部时,我可以刷新WebView。

问题在于:我滚动WebView没有任何问题,但每当我向上滑动到页面顶部时,如果我在最后,那不重要在页面的中间或开头,始终触发refreshControl。

当scrollY:0和scrollY始终为0时,将触发RefreshControl,因为正在滚动的内容不是ScrollView而是WebView,因此ScrollView始终处于scrollY:0。

我已经在WebView和ScrollView上尝试过scrollEnabled prop,但都没有。

以下是代码现在的样子:

<View style={{flex: 1}}>
    <ScrollView
      contentContainerStyle={{flex: 1}}
      refreshControl={
        <RefreshControl
          refreshing={this.state.refreshing}
          onRefresh={this._onRefresh.bind(this)}
        />
      }
    >
      <WebView
        ref="webview"
        source={{uri: initialUrl}}
      />
    </ScrollView>
</View>

我已经删除了所有道具以尝试重新开始,但我总是遇到同样的问题。在iOS上,它可以正常工作,没有这个问题。

是的,我确实在这个母亲视野内有其他东西。

1 个答案:

答案 0 :(得分:0)

奇怪的是,我从 contentContainerStyle 中删除了样式,并且效果很好。只是想出我会删除可能妨碍该功能的其他内容。也许这是一个错误,但请尝试暂时避免在其中使用Flexbox设置。