假设您有一个水平滚动视图,其中有几个嵌套的滚动视图:
<View style={styles.container}>
<ScrollView
style={{flex: 1}}
horizontal
minimumZoomScale={0.5}
maximumZoomScale={1.2}
directionalLockEnabled>
<ScrollView
style={{flex: 1}}
contentContainerStyle={styles.column}>
{dummyData.map(d => (
<View
style={styles.card}>
<Text style={styles.paragraph}>
{d.title}
</Text>
</View>)
)}
</ScrollView>
<ScrollView
style={{flex: 1}}
contentContainerStyle={styles.column}>
{dummyData.map(d => (
<View style={styles.card}>
<Text style={styles.paragraph}>
{d.title}
</Text>
</View>)
)}
</ScrollView>
</ScrollView>
</View>
如果您在iOS设备上打开零食,则会看到缩小时的嵌套滚动视图容器的高度保持不变,从而导致屏幕底部空白。
我已经阅读了ScrollView文档,但似乎无法控制这些容器的大小。理想情况下,我希望容器能够增长,只要它仍然具有可滚动的内容,以便嵌套的ScrollView始终垂直拉伸。
我已经尝试了许多不同的flex设置,但是无论如何,嵌套的ScrollView都会保留其初始高度。我可以通过编程方式计算和设置高度,但是似乎没有任何类型的onZoom
事件监听器,因此我无法响应手势,并且onContentSizeChange
不会在放大和缩小时触发。
我这里有什么选择吗?重申一下,我希望在缩放时垂直拉伸ScrollView容器,只要仍然有“屏幕外”内容