Я пробовал несколько вещей, например, обернуть все содержимое внутри ScrollView, использовать KeyboardAwareScrollView, настроить смещение и все такое. подводит меня к другой проблеме или не к желаемому решению
Код: Выделить всё
import { Image, StyleSheet, Text, View, TextInput, KeyboardAvoidingView, Platform, useWindowDimensions, Pressable } from 'react-native'
import React from 'react'
import { colors } from '../utils/colors'
const LoginScreen = () => {
const { height, width } = useWindowDimensions()
return (
AGROMARKET
Iniciar Sesión
Correo Electrónico
Contraseña
console.log('Olvide mi contrasena')}>
¿Olvidó su contraseña?
console.log('Inciando sesion')}>
Iniciar Sesión
¿Aún no tienes una cuenta?
console.log('Registrando usuario')}>
¡Regístrate ahora!
)
}
export default LoginScreen
const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: colors.primaryGreen,
alignItems: 'center'
},
logo: {
marginTop: 30,
marginLeft: 30,
width: 150,
height: 150
},
title: {
fontSize: 36,
marginBottom: 20,
marginLeft: 10,
letterSpacing: 5,
color: colors.primaryWhite,
fontFamily: 'FiraSans_800ExtraBold'
},
subTitle: {
fontSize: 28,
color: colors.primaryWhite,
fontFamily: 'FiraSans_800ExtraBold',
marginTop: 30,
marginBottom: 20
},
containerForm: {
flex: 1,
width: '100%',
borderTopLeftRadius: 80,
backgroundColor: colors.primaryBlack,
alignItems: 'center'
},
formId: {
textAlign: 'left',
fontSize: 16,
color: colors.primaryWhite,
fontFamily: 'FiraSans_600SemiBold',
marginVertical: 10
},
formField: {
width: 200,
height: 40,
borderRadius: 10,
backgroundColor: colors.secondaryWhite,
padding: 10,
fontFamily: 'FiraSans_500Medium'
},
primaryButton: {
width: 200,
height: 40,
borderRadius: 30,
backgroundColor: colors.secondaryGreen,
alignItems: 'center',
justifyContent: 'center'
},
primaryButtonText: {
fontSize: 16,
color: colors.primaryWhite,
fontFamily: 'FiraSans_500Medium'
}
})
Компонент KeyboardAvoidingView у меня не работает. Я тестирую это на устройстве Android. Когда я открываю клавиатуру, пользовательский интерфейс не настраивается так, как должен.
ПД: Хорошо, ребята. Мне удалось решить это самому, лол. Мне просто нужно было добавить компонент ScrollView, который обертывает все остальные компоненты, а KeyboardAvoidingView обертывает все это. Примерно так:
Код: Выделить всё
the rest of the components...
Подробнее здесь: https://stackoverflow.com/questions/786 ... act-native