كما موضح فى الصورتين عندما اضغط على خانة تاريخ الميلاد DOB فان حقل الادخاال يختفى خلف لوحة المفاتيح .. انا استخدمت keyboardavoidingview ولكن لم تجدى نفعا .. ما الحل ؟!!
هذا هو الكود الخاص ب Signup Screen
importReact,{useState} from 'react';import{StyleSheet,View,Text,Dimensions,KeyboardAvoidingView,} from 'react-native';importBalls from '../components/Balls';importMyButton from '../components/MyButton';importMyInput from '../components/MyInput';importFooter from '../components/Footer';const phoneHeight =Dimensions.get('screen').height;functionSignUpScreen({navigation}){const[hidePass, setHidePass]= useState(true);return(<KeyboardAvoidingView
behavior={Platform.OS ==='ios'?'padding':'height'}
style={styles.con}><Balls/><Text style={styles.title}>CreateNewAccount</Text><Text style={styles.subTitle}>Few more step to step your account</Text><View style={styles.inputsCon}><MyInput iconName="account" placeholder="First Name"/><MyInput iconName="account" placeholder="Last Name"/><MyInput iconName="email" placeholder="Email"/><MyInput
secureTextEntry={hidePass}
iconName="lock"
placeholder="Password"IsPassword
hideIconName={hidePass ?'eye':'eye-off'}
onPress={()=> setHidePass(!hidePass)}/><MyInput iconName="calendar" placeholder="DOB"/></View><MyButton title="SIGN UP"/><Footer
mainText="If you already have account ?"
pressableWord="Login"
onPress={()=> navigation.navigate('LoginScreen')}/></KeyboardAvoidingView>);}const styles =StyleSheet.create({
con:{
marginTop: phoneHeight *0.04,
flex:1,},
inputsCon:{
alignSelf:'center',
marginVertical:26,},
title:{
color:'dodgerblue',
fontSize:18,
marginLeft:17,
marginTop: phoneHeight *0.1,},
subTitle:{
fontSize:16,
marginLeft:17,},});exportdefaultSignUpScreen;
وهذا هو الكود الخاص ب MyInput
// Note >> "con" is the shortcut for "container"importReact,{useState} from 'react';import{Dimensions,StyleSheet,View,TextInput} from 'react-native';importMaterialCommunityIcons from 'react-native-vector-icons/MaterialCommunityIcons';const phoneHeight =Dimensions.get('screen').height;const phoneWidth =Dimensions.get('screen').width;functionMyInput({
hideIconName,
onPress,
iconName,
placeholder,IsPassword,...props
}){return(<View style={styles.con}><View style={styles.iconAndNameCon}><MaterialCommunityIcons name={iconName} size={22} color="dodgerblue"/><TextInput{...props}
style={styles.textInput}
placeholder={placeholder}
placeholderTextColor="black"/>{IsPassword&&(<View><MaterialCommunityIcons
onPress={onPress}
name={hideIconName}
size={22}
color="dodgerblue"/></View>)}</View><View style={styles.underLine}/></View>);}const styles =StyleSheet.create({
con:{
height: phoneHeight *0.05,
width: phoneWidth *0.8,
marginVertical:7,},
underLine:{
width:'100%',
height:1,
backgroundColor:'gray',
bottom:0,
position:'absolute',},
iconAndNameCon:{
flexDirection:'row',
alignItems:'center',},
textInput:{
marginLeft:5,
flex:1,},});exportdefaultMyInput;
السؤال
Ahmed Sawy
كما موضح فى الصورتين عندما اضغط على خانة تاريخ الميلاد DOB فان حقل الادخاال يختفى خلف لوحة المفاتيح .. انا استخدمت keyboardavoidingview ولكن لم تجدى نفعا .. ما الحل ؟!!
هذا هو الكود الخاص ب Signup Screen
وهذا هو الكود الخاص ب MyInput
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.