Вам нужно столько высот, сколько у вас TextInputs - одна высота в состоянии не решит проблему. Хороший подход заключается в том, чтобы обернуть TextInput в ваш пользовательский компонент, который будет отслеживать фокусное состояние и соответственно изменять высоту, что-то вроде этого
class ResizingTextInput {
constructor(props) {
super(props)
this.state = {
focused: false
}
}
render() {
return (
<TextInput
{...props}
style={[props.style, { height: this.state.focused ? 50 : 10, borderColor: 'gray', borderWidth: 1 }]}
onFocus={() => this.setState({ focused: true })}
onBlur={() => this.setState({ focused: false })}
/>
)
}
}
, затем используйте <ResizingTextInput />
вместо <TextInput />