TextInput во второй вкладке не смещается вверх, когда всплывающая клавиатура реагирует на навигацию createMaterialTopTabNavigator - PullRequest
0 голосов
/ 17 марта 2020

Я использовал createMaterialTopTabNavigator для создания TopTabNavigator. Этот навигатор вкладок имеет две страницы, каждая страница имеет несколько полей TextInput внутри. Обе вкладки используют один и тот же компонент, но их поведение отличается Android. Когда клавиатура появляется после фокуса TextInput, экран перемещается вверх на первой вкладке, но на второй вкладке экран остается неподвижным, а клавиатура скрывает TextInput. Я уже изменил тег активности в AndroidManifest. xml на android:windowSoftInputMode="adjustPan", но эта функция не работает для второй вкладки.

Вот упрощенный пример кода:

const Test = props => {
 return (
   <View style={{ flex: 1}}>
     <TextInput placeholder="test 1" />
     <TextInput placeholder="test 2" />
     <TextInput placeholder="test 1" />
     <TextInput placeholder="test 2" />
     <TextInput placeholder="test 1" />
     <TextInput placeholder="test 2" />
     <TextInput placeholder="test 1" />
     <TextInput placeholder="test 2" />
     <TextInput placeholder="test 1" />
     <TextInput placeholder="test 2" />
     <TextInput placeholder="test 1333" />
   </View>
 );
};
const TopTabNavigator = createMaterialTopTabNavigator(
 {
  Tab1: { screen: Test },
  Tab2: { screen: Test }
 }
);
export default createAppContainer(TopTabNavigator);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...