createMaterialTopTabNavigator внутри ScrollView с динамической высотой c - PullRequest
0 голосов
/ 27 марта 2020

Есть ли способ создать что-то вроде ScrollView с динамической c высотой?

Подробности о том, что мы пытаемся сделать:

Мы создали верхняя панель вкладок (с использованием createMaterialTopTabNavigator) в пределах ScrollView. Все отлично работает, кроме высоты ScrollView. Предположим, есть 3 экрана вкладок с разной высотой: TabScreen1: 800, TabScreen2: 400, TabScreen3: 300 ... При рендеринге ScrollView принимает наибольшую высоту, а когда выбрано Tab2 или 3, высота нашего ScrollView остается на уровне 800, поэтому в Tab2 и 3 есть свободное место для прокрутки. enter image description here

1 Ответ

0 голосов
/ 28 марта 2020

Нет необходимости помещать TabNavigator в ScrollView. Поместите ScrollView внутри каждого TabScreen вместо

Отвечая на ваш вопрос: если ваш ScrollView имеет ту же высоту, что и содержимое, он не прокручивается. Вы, вероятно, говорите о высоте contentContainer ScrollView. И единственный способ установить его динамически - это использовать onLayout, чтобы измерить высоту содержимого выбранной в данный момент вкладки, сохранить это число в состояние и применить его как высоту в contentContainerStyle опоре ScrollView. Я не рекомендую взламывать его таким образом, если это не является абсолютно необходимым

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...