React Native - flex,ScrollView和动态高度不填充屏幕

时间:2018-02-24 13:24:25

标签: reactjs dynamic flexbox scrollview native

我在ScrollView中有一个动态高度 - 在用户交互时,高度可以增加或减少。 ScrollView具有flexGrow:1,其中的内容包含在flex: 1的视图中。

然而,当在面板底部降低高度时,我会得到一个白色的过度滚动的空间'在底部我只能通过向后拖动面板来移除。(p.s我有bounces={false} overScrollMode='never'

当屏幕降低高度时,如何删除过度滚动空间。

P.S。我想要强制更新,因为有些内容我不希望丢失/更新。

1 个答案:

答案 0 :(得分:2)

  

我认为,当您展开(增加高度)和拼写(降低高度)内容时,您必须调整contentInset ScrollView道具。

...
<ScrollView
    automaticallyAdjustContentInsets={false}
    contentInset={{top:0, bottom: this.state.contentInsetBottom }}
 >
...

您可以使用某些预定义值,例如

const bottom_initial = 0;
const arbitrary_move_value = 100;

在你说,

this.state={
  contentInsetBottom: bottom_initial
}

展开或折叠时,请计算适当的移动值并更改contentInset

this.setState({
  contentInsetBottom: arbitrary_move_value
})

这只是想法。您必须计算适当的contentInset。希望这可以帮助。

相关问题