Примечание: я пробовал решения, предложенные в этом посте и в этом посте , но ни один из них не работал. Это новая проблема.
В моем приложении React Native у меня есть три вертикально сложенных ящика, каждый из которых содержит дочерний ящик одинаковой фиксированной высоты. На следующих изображениях дочерние блоки имеют красный / зеленый / синий цвета, а оставшееся пространство в каждом родительском поле имеет белый цвет. Я хочу сделать следующее:
1) Когда экран достаточно высок, чтобы осталось место, я хочу, чтобы родительские поля заполняли экран по вертикали. В этом случае в каждом родительском блоке есть оставшиеся пробелы.
2) Когда экран настолько низок, что дочерние блоки переполняются, я хочучтобы можно было прокрутить, чтобы увидеть все дочерние поля.
Мой код:
<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
возвращается к верхней части экрана. Я снова попробовал решения в этом посте и в этом посте , но ни один из них не работал.
Что я хочу знать:
Кто-нибудь знает, почему это происходит? Я хорошо понимаю, как работает ScrollView
, но я этого не понимаю.