如何防止React Native Scrollview回跳?

时间:2019-10-31 17:15:25

标签: react-native flexbox react-native-scrollview

注意:我尝试了this postthis post中建议的解决方案,但均未解决。这是一个新问题。

在我的React Native应用程序中,我有三个垂直堆叠的盒子,每个盒子都装有一个固定高度的子盒子。在下面的图像中,子框为红色/绿色/蓝色,每个父框中的剩余空间为白色。我要执行以下操作:

1)当屏幕足够高以致剩余空间时,我希望父框垂直填充屏幕。在这种情况下,每个父框中都有剩余的空白。

enter image description here

2)当屏幕低到足以使子框溢出时,我希望能够滚动查看所有子框。

enter image description here

我的代码:

  <View
      style={{
        flex: 1,
      }}
    >
      <ScrollView
        contentContainerStyle={{
          flex: 1,
        }}
      >
        <View
          style={{
            flexGrow: 1,
          }}
        >
          <View
            style={{
              height: 155,
              backgroundColor: 'red',
            }}
          />
        </View>
        <View
          style={{
            flexGrow: 1
          }}
        >
          <View
            style={{
              height: 155,
              backgroundColor: 'green',
            }}
          />
        </View>
        <View
          style={{
            flexGrow: 1
          }}
        >
          <View
            style={{
              height: 155,
              backgroundColor: 'blue',
            }}
          />
        </View>
      </ScrollView>
    </View>

问题

在场景2中,当我滚动到底部并放开时,ScrollView将回到屏幕顶部。再次,我尝试了this postthis post中的解决方案,但都没有解决。

我想知道的事情:

有人知道为什么会这样吗?我对ScrollView的工作方式有很好的了解,但是我不明白。

0 个答案:

没有答案