Estoy tratando de colocar una entrada en la parte inferior de la pantalla y cuando hago clic, quiero que esté sobre el teclado. Estoy usando Expo. He probado dos escenarios:
screenOptions={{ tabBarHideOnKeyboard: 'true' }}configuración en la barra de pestañas, pero no funciona sin problemas y tampoco funcionará si trato de agregar un componente personalizado para la barra de pestañas inferior.
Aquí está mi código:
NuevoComp.js:
const NewComp = () => { return ( <KeyboardAvoidingView behavior={"height"} style={{ flex: 1 }} > <TouchableWithoutFeedback onPress={Keyboard.dismiss}> <View style={{ padding: 24, flex: 1, justifyContent: "flex-end" }}> <TextInput placeholder="Username" style={{ height: 40, borderColor: "#000000", borderBottomWidth: 1, }}/> </View> </TouchableWithoutFeedback> </KeyboardAvoidingView> ); };BottomNavigator.js:
const BottomNavigator = ({ navigation, route }) => { return ( <Tab.Navigator> <Tab.Screen key={1} name={'TAB_1'} component={NewComp} options={{header: () => null}}/> <Tab.Screen key={2} name={'TAB_2'} component={NewComp} options={{header: () => null}} /> <Tab.Screen key={3} name={'TAB_3'} component={NewComp} options={{header: () => null}} /> </Tab.Navigator> ); }¿Has probado este documento KeyboardAvoidingView ? Puedo establecer si la posición del contenido estará encima del teclado o detrás.
si desea mostrar, envíe accesorios enabled={true} , este es el valor predeterminado. si desea ocultar, envíe accesorios enabled={false}