В моем приложении целевая страница - экран входа в систему.Я сделал это с помощью native-base
пользовательского интерфейса. Экран входа в систему содержит logo
и ниже будет 2 поля для ввода имени пользователя и пароля, а также кнопка входа.Проблема в том, что всякий раз, когда я щелкаю по полю ввода, login form
сворачивается под логотип.Я поделюсь соответствующими экранами для этого.Я пробовал следующий метод
android:windowSoftInputMode="adjustResize"
в теге activity
в AndroidManifest.xml
.Но все равно получаю тот же экран.Пожалуйста, взгляните на экраны.
- Нормальное поведение экрана https://i.stack.imgur.com/ZFqfI.png
- После открытия клавиатуры https://i.stack.imgur.com/tZr1i.png
Я тоже пробовал KeyboardAvoidngView
. Следующий код
render() {
return (
<KeyboardAvoidingView behavior="padding" style={{flex:1}}>
<Container>
<StatusBar barStyle="light-content" />
<View style={styles.logoContainer}>
<ImageBackground source={launchscreenLogo} style={styles.logo} />
</View>
<View
style={{
flex:1,
marginBottom: 200,
backgroundColor: "transparent"
}}
>
<Form style={{margin:10}}>
<Item style={{margin:10}}>
<Icon active name='person' />
<Input
placeholder='Username'
style={{marginLeft:18, color:'#000'}}
value={this.state.username}
onChangeText={username => this.setState({ username })}
/>
</Item>
<Item style={{margin:10}} >
<Icon active name='mail' />
<Input
placeholder='Email'
style={{marginLeft:18, color:'#000'}}
value={this.state.email}
onChangeText={email => this.setState({email})}/>
</Item>
<Item style={{margin:10}}>
<Icon active name='ios-lock' />
<Input
placeholder='Password' style={{marginLeft:18, color:'#000'}}
value={this.state.password}
onChangeText={password => this.setState({ password })}
/>
</Item>
<Item style={{margin:10}}>
<Icon active name='ios-lock' />
<Input
placeholder='Repeat Password'
style={{marginLeft:18, color:'#000'}}
value={this.state.r_password}
onChangeText={r_password => this.setState({ r_password })}/>
</Item>
</Form>
<Button
style={{ backgroundColor: "#809fff", alignSelf: "center", elevation:20}}
onPress={() => this.props.navigation.navigate("Anatomy")}
>
<Text style={{fontWeight:'bold',fontSize:18}}>REGISTER</Text>
</Button>
</View>
<View style={{ marginBottom: 80 }}>
</View>
</Container>
</KeyboardAvoidingView>
);
}