Commit bc25cc28 by Giang Tran

fix keyboard

parent d66cf65b
......@@ -10,6 +10,8 @@ import {
Platform,
Dimensions,
Alert,
TouchableWithoutFeedback,
Keyboard,
} from 'react-native';
import TextField from '../../../components/Input/TextField';
import TextMulti from '../../../components/Input/TextMulti';
......@@ -120,43 +122,45 @@ const BankInfor = (props) => {
behavior={Platform.Os === 'ios' ? 'padding' : 'height'}
style={{flex: 1}}
keyboardVerticalOffset={-50}>
<ScrollView showsVerticalScrollIndicator={false}>
<View
style={{
flex: 1,
paddingHorizontal: 10,
paddingTop: 10,
}}>
<Text
<TouchableWithoutFeedback onPress={Keyboard.dismiss}>
<ScrollView showsVerticalScrollIndicator={false}>
<View
style={{
fontSize: getFontXD(42),
color: R.colors.color777,
flex: 1,
paddingHorizontal: 10,
paddingTop: 10,
}}>
Loi th
</Text>
<PickerItem
width={width - 20}
data={dataType}
onValueChange={(value, items) => {
setAccType(items);
}}
/>
<TextField
isNumber={true}
title={'Mã ngân hàng'}
onChangeText={(val) => setBackNo(val)}
/>
<TextField
title={'Số thẻ/tài khoản'}
isNumber={true}
onChangeText={(val) => setAccountNo(val)}
/>
<Text
style={{
fontSize: getFontXD(42),
color: R.colors.color777,
}}>
Loi th
</Text>
<PickerItem
width={width - 20}
data={dataType}
onValueChange={(value, items) => {
setAccType(items);
}}
/>
<TextField
isNumber={true}
title={'Mã ngân hàng'}
onChangeText={(val) => setBackNo(val)}
/>
<TextField
title={'Số thẻ/tài khoản'}
isNumber={true}
onChangeText={(val) => setAccountNo(val)}
/>
<View style={styles.btnSend}>
<Button title={'Xác minh'} onClick={onPress} />
<View style={styles.btnSend}>
<Button title={'Xác minh'} onClick={onPress} />
</View>
</View>
</View>
</ScrollView>
</ScrollView>
</TouchableWithoutFeedback>
</KeyboardAvoidingView>
);
};
......
......@@ -9,6 +9,8 @@ import {
KeyboardAvoidingView,
ScrollView,
Platform,
TouchableWithoutFeedback,
Keyboard,
} from 'react-native';
import R from '../../../assets/R';
import moment from 'moment';
......@@ -47,46 +49,51 @@ const GeneralInfor = (props) => {
behavior={Platform.Os === 'ios' ? 'padding' : 'height'}
style={{flex: 1}}
keyboardVerticalOffset={-50}>
<ScrollView showsVerticalScrollIndicator={false}>
<View style={{flex: 1, paddingHorizontal: 10, paddingTop: 10}}>
<View style={{flexDirection: 'row'}}>
<View style={{flex: 1}}>
<TextField
title={'Họ và tên đệm'}
onChangeText={(val) => setLastName(val)}
/>
</View>
<View style={{width: 20}} />
<View style={{flex: 1}}>
<TextField
title={'Tên'}
onChangeText={(val) => setFirstName(val)}
/>
<TouchableWithoutFeedback onPress={Keyboard.dismiss}>
<ScrollView showsVerticalScrollIndicator={false}>
<View style={{flex: 1, paddingHorizontal: 10, paddingTop: 10}}>
<View style={{flexDirection: 'row'}}>
<View style={{flex: 1}}>
<TextField
title={'Họ và tên đệm'}
onChangeText={(val) => setLastName(val)}
/>
</View>
<View style={{width: 20}} />
<View style={{flex: 1}}>
<TextField
title={'Tên'}
onChangeText={(val) => setFirstName(val)}
/>
</View>
</View>
</View>
<TextField
isNumber={true}
title={'Số điện thoại'}
onChangeText={(val) => setPhone(val)}
/>
<PickerDate
value={birth}
onValueChange={(val) => {
setBirth(val);
}}
title={'Ngày sinh'}
/>
<TextField
isNumber={true}
title={'Số điện thoại'}
onChangeText={(val) => setPhone(val)}
/>
<PickerDate
value={birth}
onValueChange={(val) => {
setBirth(val);
}}
title={'Ngày sinh'}
/>
<TextMulti title={'Địa chỉ'} onChangeText={(val) => setAdress(val)} />
<TouchableOpacity onPress={onNextPress} style={styles.btnNext}>
<Image
style={{width: 30, height: 30}}
source={R.images.iconRight1}
<TextMulti
title={'Địa chỉ'}
onChangeText={(val) => setAdress(val)}
/>
</TouchableOpacity>
<View style={{height: 100}} />
</View>
</ScrollView>
<TouchableOpacity onPress={onNextPress} style={styles.btnNext}>
<Image
style={{width: 30, height: 30}}
source={R.images.iconRight1}
/>
</TouchableOpacity>
<View style={{height: 100}} />
</View>
</ScrollView>
</TouchableWithoutFeedback>
</KeyboardAvoidingView>
);
};
......
......@@ -153,28 +153,29 @@ const Profile = (props) => {
behavior={Platform.Os === 'ios' ? 'padding' : 'height'}
style={{flex: 1}}
keyboardVerticalOffset={-50}>
<ScrollView style={{flex: 1}} showsVerticalScrollIndicator={false}>
<View
style={{
flex: 1,
paddingHorizontal: 10,
paddingTop: 10,
}}>
<Text
<TouchableWithoutFeedback onPress={Keyboard.dismiss}>
<ScrollView style={{flex: 1}} showsVerticalScrollIndicator={false}>
<View
style={{
fontSize: getFontXD(42),
color: R.colors.color777,
flex: 1,
paddingHorizontal: 10,
paddingTop: 10,
}}>
Loi th
</Text>
<PickerItem
width={width - 20}
data={dataType}
onValueChange={(value, items) => {
setType(items);
}}
/>
{/*
<Text
style={{
fontSize: getFontXD(42),
color: R.colors.color777,
}}>
Loi th
</Text>
<PickerItem
width={width - 20}
data={dataType}
onValueChange={(value, items) => {
setType(items);
}}
/>
{/*
<TextField
isNumber={true}
title={'Số thẻ'}
......@@ -185,31 +186,32 @@ const Profile = (props) => {
onValueChange={(val) => setDate_range(val)}
title={'Ngày cấp'}
/> */}
<View
style={{
flexDirection: 'row',
justifyContent: 'space-between',
flexWrap: 'wrap',
flex: 1,
}}>
<PickerImgUni
onSelectImg={(path) => setUrlFont(path)}
title={'Ảnh mặt trước CMND'}
/>
<PickerImgUni
onSelectImg={(path) => setUrlBack(path)}
title={'Ảnh mặt sau CMND'}
/>
<PickerImgUni
onSelectImg={(path) => setUrlSign(path)}
title={'Ảnh chữ ký'}
/>
<View
style={{
flexDirection: 'row',
justifyContent: 'space-between',
flexWrap: 'wrap',
flex: 1,
}}>
<PickerImgUni
onSelectImg={(path) => setUrlFont(path)}
title={'Ảnh mặt trước CMND'}
/>
<PickerImgUni
onSelectImg={(path) => setUrlBack(path)}
title={'Ảnh mặt sau CMND'}
/>
<PickerImgUni
onSelectImg={(path) => setUrlSign(path)}
title={'Ảnh chữ ký'}
/>
</View>
</View>
</ScrollView>
<View style={styles.btnSend}>
<Button title={'Xác minh'} onClick={onPress} />
</View>
</ScrollView>
<View style={styles.btnSend}>
<Button title={'Xác minh'} onClick={onPress} />
</View>
</TouchableWithoutFeedback>
</KeyboardAvoidingView>
);
};
......
......@@ -9,6 +9,8 @@ import {
KeyboardAvoidingView,
ScrollView,
Platform,
TouchableWithoutFeedback,
Keyboard,
} from 'react-native';
import R from '../../../assets/R';
import moment from 'moment';
......@@ -33,64 +35,66 @@ const GeneralInfor = (props) => {
behavior={Platform.Os === 'ios' ? 'padding' : 'height'}
style={{flex: 1}}
keyboardVerticalOffset={-50}>
<ScrollView showsVerticalScrollIndicator={false}>
<View style={{flex: 1, paddingHorizontal: 10, paddingTop: 10}}>
<View
style={{
width: '100%',
paddingVertical: 10,
flexDirection: 'row',
justifyContent: 'space-between',
alignItems: 'center',
}}>
<View style={{flex: 1}}>
<Text
style={{
fontSize: getFontXD(42),
color: R.colors.color777,
marginBottom: 5,
}}>
Trng thái
</Text>
<TouchableWithoutFeedback onPress={Keyboard.dismiss}>
<ScrollView showsVerticalScrollIndicator={false}>
<View style={{flex: 1, paddingHorizontal: 10, paddingTop: 10}}>
<View
style={{
width: '100%',
paddingVertical: 10,
flexDirection: 'row',
justifyContent: 'space-between',
alignItems: 'center',
}}>
<View style={{flex: 1}}>
<Text
style={{
fontSize: getFontXD(42),
color: R.colors.color777,
marginBottom: 5,
}}>
Trng thái
</Text>
</View>
<View style={{flex: 1}}>{renderStatus(props.user.status)}</View>
</View>
<View style={{flex: 1}}>{renderStatus(props.user.status)}</View>
</View>
<View style={{flexDirection: 'row'}}>
<View style={{flex: 1}}>
<TextField
editable={false}
value={props.user.l_name}
title={'Họ và tên đệm'}
/>
</View>
<View style={{width: 20}} />
<View style={{flex: 1}}>
<TextField
value={props.user.f_name}
editable={false}
title={'Tên'}
/>
<View style={{flexDirection: 'row'}}>
<View style={{flex: 1}}>
<TextField
editable={false}
value={props.user.l_name}
title={'Họ và tên đệm'}
/>
</View>
<View style={{width: 20}} />
<View style={{flex: 1}}>
<TextField
value={props.user.f_name}
editable={false}
title={'Tên'}
/>
</View>
</View>
<TextField
value={props.user.phone}
isNumber={true}
editable={false}
title={'Số điện thoại'}
/>
<PickerDate
valueString={convertDate(props.user.birthday)}
disabled={true}
title={'Ngày sinh'}
/>
<TextMulti
value={props.user.address}
editable={false}
title={'Địa chỉ'}
/>
<View style={{height: 100}} />
</View>
<TextField
value={props.user.phone}
isNumber={true}
editable={false}
title={'Số điện thoại'}
/>
<PickerDate
valueString={convertDate(props.user.birthday)}
disabled={true}
title={'Ngày sinh'}
/>
<TextMulti
value={props.user.address}
editable={false}
title={'Địa chỉ'}
/>
<View style={{height: 100}} />
</View>
</ScrollView>
</ScrollView>
</TouchableWithoutFeedback>
</KeyboardAvoidingView>
);
};
......
......@@ -10,6 +10,8 @@ import {
ScrollView,
Platform,
Dimensions,
TouchableWithoutFeedback,
Keyboard,
} from 'react-native';
import Button from '../../../components/Button';
import PickerImgUni from '../../../components/Picker/PickerImgUni';
......@@ -58,38 +60,40 @@ const Profile = (props) => {
behavior={Platform.Os === 'ios' ? 'padding' : 'height'}
style={{flex: 1}}
keyboardVerticalOffset={-50}>
<ScrollView style={{flex: 1}} showsVerticalScrollIndicator={false}>
<View
style={{
flex: 1,
paddingHorizontal: 10,
paddingTop: 10,
}}>
<TextField
value={renderType(props.user.card_type)}
editable={false}
title={'Loại thẻ'}
/>
<TouchableWithoutFeedback onPress={Keyboard.dismiss}>
<ScrollView style={{flex: 1}} showsVerticalScrollIndicator={false}>
<View
style={{
flexDirection: 'row',
justifyContent: 'space-between',
flexWrap: 'wrap',
flex: 1,
paddingHorizontal: 10,
paddingTop: 10,
}}>
<Item
linkImg={props.user.identity_before}
title={'Ảnh mặt trước CMND/CCCD'}
/>
<Item
linkImg={props.user.identity_after}
title={'Ảnh mặt sau CMND/CCCD'}
<TextField
value={renderType(props.user.card_type)}
editable={false}
title={'Loại thẻ'}
/>
<Item linkImg={props.user.sign_img} title={'Ảnh mặt chữ ký'} />
<View
style={{
flexDirection: 'row',
justifyContent: 'space-between',
flexWrap: 'wrap',
flex: 1,
}}>
<Item
linkImg={props.user.identity_before}
title={'Ảnh mặt trước CMND/CCCD'}
/>
<Item
linkImg={props.user.identity_after}
title={'Ảnh mặt sau CMND/CCCD'}
/>
<Item linkImg={props.user.sign_img} title={'Ảnh mặt chữ ký'} />
</View>
</View>
</View>
</ScrollView>
</ScrollView>
</TouchableWithoutFeedback>
</KeyboardAvoidingView>
);
};
......
......@@ -6,6 +6,8 @@ import {
Platform,
SafeAreaView,
StatusBar,
TouchableWithoutFeedback,
Keyboard,
} from 'react-native';
import HeaderAuthen from '../../components/Header/HeaderAuthen';
import {createMaterialTopTabNavigator} from '@react-navigation/material-top-tabs';
......@@ -21,35 +23,37 @@ const Authen = (props) => {
behavior={Platform.Os === 'ios' ? 'padding' : 'height'}
style={{flex: 1, backgroundColor: 'white'}}
keyboardVerticalOffset={-50}>
<ScrollView showsVerticalScrollIndicator={false}>
<View style={{flex: 1}}>
<HeaderAuthen />
<View style={{flex: 1, backgroundColor: 'white'}}>
<Tab.Navigator
initialRouteName="Login"
tabBarOptions={{
activeTintColor: '#0045C8',
labelStyle: {fontSize: getFontXD(42), fontWeight: '700'},
style: {
justifyContent: 'center',
marginHorizontal: 40,
elevation: 0,
},
}}>
<Tab.Screen
name="LOGIN"
component={Login}
options={{tabBarLabel: 'Đăng nhập'}}
/>
<Tab.Screen
name="REGISTOR"
component={Registor}
options={{tabBarLabel: 'Đăng ký'}}
/>
</Tab.Navigator>
<TouchableWithoutFeedback onPress={Keyboard.dismiss}>
<ScrollView showsVerticalScrollIndicator={false}>
<View style={{flex: 1}}>
<HeaderAuthen />
<View style={{flex: 1, backgroundColor: 'white'}}>
<Tab.Navigator
initialRouteName="Login"
tabBarOptions={{
activeTintColor: '#0045C8',
labelStyle: {fontSize: getFontXD(42), fontWeight: '700'},
style: {
justifyContent: 'center',
marginHorizontal: 40,
elevation: 0,
},
}}>
<Tab.Screen
name="LOGIN"
component={Login}
options={{tabBarLabel: 'Đăng nhập'}}
/>
<Tab.Screen
name="REGISTOR"
component={Registor}
options={{tabBarLabel: 'Đăng ký'}}
/>
</Tab.Navigator>
</View>
</View>
</View>
</ScrollView>
</ScrollView>
</TouchableWithoutFeedback>
</KeyboardAvoidingView>
);
};
......
......@@ -10,6 +10,8 @@ import {
TouchableOpacity,
ImageBackground,
ScrollView,
TouchableWithoutFeedback,
Keyboard,
} from 'react-native';
import HeaderBack from '../../components/Header/HeaderBack';
import RadioForm, {
......@@ -58,95 +60,100 @@ const FeedbackView = (props) => {
behavior={Platform.Os === 'ios' ? 'padding' : 'height'}
style={{flex: 1}}
keyboardVerticalOffset={-50}>
<View style={{flex: 1}}>
<HeaderBack isWhite={true} title={'GỬI FEEDBACK'} />
<View style={styles.container}>
<Text style={styles.txt}>Đánh giá dch v ca DCV Invest</Text>
<TouchableWithoutFeedback onPress={Keyboard.dismiss}>
<View style={{flex: 1}}>
<HeaderBack isWhite={true} title={'GỬI FEEDBACK'} />
<View style={styles.container}>
<Text style={styles.txt}>Đánh giá dch v ca DCV Invest</Text>
<RadioForm animation={true}>
{radio_props.map((obj, i) => (
<RadioButton labelHorizontal={true} key={i}>
<RadioButtonInput
obj={obj}
index={i}
isSelected={isSelected === i}
onPress={onPress}
r
borderWidth={1}
buttonColor={isSelected === i ? '#1473E6' : '#C5C5C5'}
buttonSize={10}
buttonOuterSize={18}
buttonStyle={{marginLeft: 20, marginVertical: 10}}
/>
<RadioButtonLabel
obj={obj}
index={i}
labelColor={'#001C51'}
onPress={onPress}
labelStyle={{fontSize: 16, paddingLeft: 16}}
/>
</RadioButton>
))}
</RadioForm>
<RadioForm animation={true}>
{radio_props.map((obj, i) => (
<RadioButton labelHorizontal={true} key={i}>
<RadioButtonInput
obj={obj}
index={i}
isSelected={isSelected === i}
onPress={onPress}
r
borderWidth={1}
buttonColor={isSelected === i ? '#1473E6' : '#C5C5C5'}
buttonSize={10}
buttonOuterSize={18}
buttonStyle={{marginLeft: 20, marginVertical: 10}}
/>
<RadioButtonLabel
obj={obj}
index={i}
labelColor={'#001C51'}
onPress={onPress}
labelStyle={{fontSize: 16, paddingLeft: 16}}
/>
</RadioButton>
))}
</RadioForm>
<View style={styles.footer}>
<TextInput
style={styles.txtInput}
placeholderTextColor={R.colors.placeHolder}
multiline={true}
placeholder={'Hãy chia sẻ cảm nhận về dịch vụ nhé'}
onChangeText={(val) => setTxtInput(val)}
/>
<View
style={{
borderWidth: 1,
borderStyle: 'dashed',
borderColor: '#CBCBCB',
}}
/>
<View style={styles.picker}>
{imageAdd.length > 0 ? (
<ScrollView showsHorizontalScrollIndicator={false} horizontal>
{imageAdd.map((e, index) => (
<View key={index} style={styles.imageButton}>
<ImageBackground
imageStyle={{
width: WIDTHXD(330),
height: HEIGHTXD(250),
}}
style={{
width: WIDTHXD(330),
height: HEIGHTXD(250),
}}
source={{uri: e}}>
<TouchableOpacity
<View style={styles.footer}>
<TextInput
style={styles.txtInput}
placeholderTextColor={R.colors.placeHolder}
multiline={true}
placeholder={'Hãy chia sẻ cảm nhận về dịch vụ nhé'}
onChangeText={(val) => setTxtInput(val)}
/>
<View
style={{
borderWidth: 1,
borderStyle: 'dashed',
borderColor: '#CBCBCB',
}}
/>
<View style={styles.picker}>
{imageAdd.length > 0 ? (
<ScrollView showsHorizontalScrollIndicator={false} horizontal>
{imageAdd.map((e, index) => (
<View key={index} style={styles.imageButton}>
<ImageBackground
imageStyle={{
width: WIDTHXD(330),
height: HEIGHTXD(250),
}}
style={{
flexDirection: 'row',
justifyContent: 'flex-end',
marginTop: -10,
marginRight: -10,
width: WIDTHXD(330),
height: HEIGHTXD(250),
}}
onPress={() => onClickClose(index)}>
<Image
style={{height: 30, width: 30}}
source={R.images.iconClose}
/>
</TouchableOpacity>
</ImageBackground>
</View>
))}
</ScrollView>
) : (
<PickerImg title="Tải ảnh lên" onClickImage={onClickImages} />
)}
source={{uri: e}}>
<TouchableOpacity
style={{
flexDirection: 'row',
justifyContent: 'flex-end',
marginTop: -10,
marginRight: -10,
}}
onPress={() => onClickClose(index)}>
<Image
style={{height: 30, width: 30}}
source={R.images.iconClose}
/>
</TouchableOpacity>
</ImageBackground>
</View>
))}
</ScrollView>
) : (
<PickerImg title="Tải ảnh lên" onClickImage={onClickImages} />
)}
</View>
</View>
</View>
</View>
<View style={styles.containerBtn}>
<Button onClick={() => console.log('hello')} title={'Gửi feedback'} />
<View style={styles.containerBtn}>
<Button
onClick={() => console.log('hello')}
title={'Gửi feedback'}
/>
</View>
</View>
</View>
</TouchableWithoutFeedback>
</KeyboardAvoidingView>
);
};
......
......@@ -11,6 +11,8 @@ import {
KeyboardAvoidingView,
ScrollView,
Platform,
TouchableWithoutFeedback,
Keyboard,
} from 'react-native';
import R from '../../../../assets/R';
import RadioForm, {
......@@ -49,75 +51,77 @@ const GeneralInfor = (props) => {
behavior={Platform.Os === 'ios' ? 'padding' : 'height'}
style={{flex: 1}}
keyboardVerticalOffset={-500}>
<ScrollView style={{flex: 1}} showsVerticalScrollIndicator={false}>
<View style={styles.container}>
<TextField
value={props.user.fullname}
editable={false}
title={'Họ và tên'}
onChangeText={(val) => console.log(val)}
/>
<TextField
title={'Điện thoại'}
editable={false}
value={props.user.phone}
onChangeText={(val) => console.log(val)}
/>
<TouchableWithoutFeedback onPress={Keyboard.dismiss}>
<ScrollView style={{flex: 1}} showsVerticalScrollIndicator={false}>
<View style={styles.container}>
<TextField
value={props.user.fullname}
editable={false}
title={'Họ và tên'}
onChangeText={(val) => console.log(val)}
/>
<TextField
title={'Điện thoại'}
editable={false}
value={props.user.phone}
onChangeText={(val) => console.log(val)}
/>
<TextField
editable={false}
title={'Email'}
value={props.user.email}
onChangeText={(val) => console.log(val)}
/>
{/*
<TextField
editable={false}
title={'Email'}
value={props.user.email}
onChangeText={(val) => console.log(val)}
/>
{/*
<TextInput
style={styles.customTxt}
onChangeText={(val) => console.log(val)}
placeholder="0000"
/> */}
<Text style={styles.txtTitle}>Gii tính</Text>
<Text style={styles.txtTitle}>Gii tính</Text>
<RadioForm
radio_props={radio_props}
labelStyle={{fontSize: getFontXD(42)}}
formHorizontal={true}
style={styles.row}
initial={0}
onPress={(value) => {
setAccount({value: value});
}}
/>
<RadioForm
radio_props={radio_props}
labelStyle={{fontSize: getFontXD(42)}}
formHorizontal={true}
style={styles.row}
initial={0}
onPress={(value) => {
setAccount({value: value});
}}
/>
<View style={styles.status}>
<Text style={styles.txtTitle}>Trng thái</Text>
{renderStatus(props.user.status)}
</View>
<View style={styles.status}>
<Text style={styles.txtTitle}>Trng thái</Text>
{renderStatus(props.user.status)}
</View>
<PickerDate
valueString={converStringToDate(props.user.birthday)}
title={'Ngày sinh'}
disabled={true}
/>
<PickerDate
valueString={converStringToDate(props.user.birthday)}
title={'Ngày sinh'}
disabled={true}
/>
<TextMulti
onChangeText={(val) => consoele.log(val)}
value={props.user.address}
editable={false}
title={'Địa chỉ'}
/>
<TextMulti
onChangeText={(val) => consoele.log(val)}
value={props.user.address}
editable={false}
title={'Địa chỉ'}
/>
<View style={{height: 40}} />
<View style={{justifyContent: 'center', alignItems: 'center'}}>
{/* <TouchableOpacity
<View style={{height: 40}} />
<View style={{justifyContent: 'center', alignItems: 'center'}}>
{/* <TouchableOpacity
onPress={() => console.log('Hello')}
style={styles.btn}>
<Text style={styles.txtBtn}>Cập nhật</Text>
</TouchableOpacity> */}
</View>
</View>
</View>
</ScrollView>
</ScrollView>
</TouchableWithoutFeedback>
</KeyboardAvoidingView>
);
};
......
......@@ -7,6 +7,11 @@ import {
Dimensions,
TouchableOpacity,
Alert,
ScrollView,
KeyboardAvoidingView,
Platform,
TouchableWithoutFeedback,
Keyboard,
} from 'react-native';
import {connect} from 'react-redux';
import R from '../../assets/R';
......@@ -85,43 +90,55 @@ const AddMethodPay = (props) => {
};
return (
<View style={{flex: 1}}>
<HeaderBack title={'Thêm phương thức thanh toán'} />
<View style={styles.container}>
<Text style={styles.txtTitle}>Chn ngân hàng </Text>
<PickerItem
value={bank_id}
data={data}
onValueChange={(value, items) => {
setBankID(items);
}}
/>
<TextField
onChangeText={(val) => setBankName(val)}
title={'Chi nhánh'}
/>
<KeyboardAvoidingView
behavior={Platform.Os === 'ios' ? 'padding' : 'height'}
style={{flex: 1}}
keyboardVerticalOffset={-50}>
<TouchableWithoutFeedback onPress={Keyboard.dismiss}>
<View style={{flex: 1}}>
<HeaderBack title={'Thêm phương thức thanh toán'} />
<View style={styles.container}>
<View style={{flex: 1}}>
<Text style={styles.txtTitle}>Chn ngân hàng </Text>
<PickerItem
value={bank_id}
data={data}
onValueChange={(value, items) => {
setBankID(items);
}}
/>
<TextField
onChangeText={(val) => setBankName(val)}
title={'Chi nhánh'}
/>
<TextField
onChangeText={(val) => setAccountName(val)}
title={'Tên chủ tài khoản'}
/>
<TextField
onChangeText={(val) => setAccountNo(val)}
title={'Số tài khoản ngân hàng'}
isNumber={true}
/>
</View>
<TouchableOpacity onPress={onLick} style={styles.btn}>
<Text style={styles.txtAdd}>Thêm</Text>
</TouchableOpacity>
</View>
<TextField
onChangeText={(val) => setAccountName(val)}
title={'Tên chủ tài khoản'}
/>
<TextField
onChangeText={(val) => setAccountNo(val)}
title={'Số tài khoản ngân hàng'}
isNumber={true}
/>
</View>
<View style={{justifyContent: 'center', alignItems: 'center'}}>
<TouchableOpacity onPress={onLick} style={styles.btn}>
<Text style={styles.txtAdd}>Thêm</Text>
</TouchableOpacity>
</View>
</View>
</View>
</TouchableWithoutFeedback>
</KeyboardAvoidingView>
);
};
const styles = StyleSheet.create({
container: {
paddingHorizontal: 20,
paddingHorizontal: 10,
paddingTop: 10,
flex: 1,
},
btn: {
......@@ -131,9 +148,7 @@ const styles = StyleSheet.create({
alignItems: 'center',
backgroundColor: R.colors.main,
borderRadius: 5,
position: 'absolute',
bottom: 30,
right: width / 2 - 150 / 2,
marginBottom: 10,
},
txtAdd: {
color: R.colors.white,
......
......@@ -6,22 +6,22 @@ import {useNavigation} from '@react-navigation/native';
const MethodPay = (props) => {
const [data, setData] = useState([]);
const [isRefresh, setRefresh] = useState(true);
const navigation = useNavigation();
const [isRefresh, setRefresh] = useState(false);
useEffect(() => {
const unsubscribe = navigation.addListener('focus', () => {
getData();
});
getData();
}, []);
return unsubscribe;
}, [navigation]);
const onRefresh = () => {
getData();
};
const getData = async () => {
setRefresh(true);
const res = await getListWidthDraw({
platform: Platform.OS,
});
setRefresh(false);
if (res.data.code == 200 && res.data.data) {
setData(res.data.data);
} else {
......@@ -29,7 +29,13 @@ const MethodPay = (props) => {
}
};
return <MethodPayView listMethod={data} />;
return (
<MethodPayView
onRefresh={onRefresh}
listMethod={data}
isRefresh={isRefresh}
/>
);
};
export default MethodPay;
......@@ -39,7 +39,6 @@ const MethodPayDetail = (props) => {
const onUpdate = async () => {
const titles = ['chi nhánh', 'chủ tài khoản', 'số tài khoản ngân hàng'];
const index = checkFormatArray([branch_name, account_name, account_no]);
console.log('Index', index);
if (index === true) {
if (
branch_name != params.branch_name ||
......
......@@ -11,15 +11,19 @@ import {ADDMETHODPAY} from '../../routers/ScreenNames';
const MethodPayView = (props) => {
const navigate = useNavigation();
const {isRefresh, listMethod, onRefresh} = props;
return (
<View style={{flex: 1}}>
<HeaderBack title={'Cài đặt phương thức thanh toán'} />
<View style={{flex: 1}}>
<FlatList
keyExtractor={(item) => item.id}
keyExtractor={(item) => item.method}
showsVerticalScrollIndicator={false}
refreshing={isRefresh}
onRefresh={onRefresh}
onEndReachedThreshold={0.01}
data={props.listMethod}
data={listMethod}
renderItem={({item}) => <Item item={item} />}
/>
......
......@@ -42,7 +42,9 @@ const TextField = (props) => {
source={{uri: linkImg}}
style={{width: 50, height: HEIGHTXD(109), marginRight: 10}}
/>
<Text numberOfLines={1}>{value}</Text>
<Text style={{flex: 1}} numberOfLines={1}>
{value}
</Text>
</View>
</View>
);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment