如何在 TextInput 中添加前缀 - React Native
How to add prefix in TextInput - React Native
我想为我的文本输入添加前缀,我想知道如何操作。
文本输入代码
<TextInput
style={styles.inputs}
placeholder="Mobile Number"
keyboardType="number-pad"
underlineColorAndroid="transparent"
onChangeText={mobile_number => this.setState({mobile_number})}
/>
我想要的最终输出
您可以使用文本掩码。试试这个
https://github.com/react-native-community/react-native-text-input-mask
处理phone个数字输入
https://www.npmjs.com/package/react-phone-number-input
您可以结合使用两个文本输入。一个用于前缀,另一个用于输入文本。
像这样:
<View>
<TextInput /> // Text or dropdown pick, something else
<TextInput />
<View>
如果您不希望前缀可编辑,请使用标签:
<View>
<Label />
<TextInput />
<View>
你可以这样做:
render() {
return (
<View style={styles.inputContainer}>
<Text style={styles.prefix}>+94</Text>
<TextInput
placeholder="Mobile Number"
keyboardType="number-pad"
underlineColorAndroid="transparent"
onChangeText={mobile_number => this.setState({ mobile_number })}
/>
</View>
)
}
const styles = StyleSheet.create({
inputContainer: {
borderWidth: 1,
flexDirection: 'row',
alignItems: 'center',
backgroundColor: 'white',
marginHorizontal: 10,
borderRadius: 10
},
prefix: {
paddingHorizontal: 10,
fontWeight: 'bold',
color: 'black'
}
})
我想为我的文本输入添加前缀,我想知道如何操作。
文本输入代码
<TextInput
style={styles.inputs}
placeholder="Mobile Number"
keyboardType="number-pad"
underlineColorAndroid="transparent"
onChangeText={mobile_number => this.setState({mobile_number})}
/>
我想要的最终输出
您可以使用文本掩码。试试这个 https://github.com/react-native-community/react-native-text-input-mask
处理phone个数字输入 https://www.npmjs.com/package/react-phone-number-input
您可以结合使用两个文本输入。一个用于前缀,另一个用于输入文本。 像这样:
<View>
<TextInput /> // Text or dropdown pick, something else
<TextInput />
<View>
如果您不希望前缀可编辑,请使用标签:
<View>
<Label />
<TextInput />
<View>
你可以这样做:
render() {
return (
<View style={styles.inputContainer}>
<Text style={styles.prefix}>+94</Text>
<TextInput
placeholder="Mobile Number"
keyboardType="number-pad"
underlineColorAndroid="transparent"
onChangeText={mobile_number => this.setState({ mobile_number })}
/>
</View>
)
}
const styles = StyleSheet.create({
inputContainer: {
borderWidth: 1,
flexDirection: 'row',
alignItems: 'center',
backgroundColor: 'white',
marginHorizontal: 10,
borderRadius: 10
},
prefix: {
paddingHorizontal: 10,
fontWeight: 'bold',
color: 'black'
}
})