官术网_书友最值得收藏!

The TextInput component

We will use this component often in the next section. The general idea is to be able to pass data from a smartphone keyboard. TextInput is used in login and registration forms and many other places where the user needs to send text data to an application.

Let's extend the HelloWorld example from Chapter 1, React Component Patterns, to accept a name:

// Chapter 2 / Example 6 / src / TextInputExample.js
export default class TextInputExample extends React.Component {
state = {
name: null
};

render = () => (
<View style={styles.container}>
{this.state.name && (
<Text style={styles.text}>
Hello {this.state.name}
</Text>
)}
<Text>Hands-On Design Patterns with React Native</Text>
<Text>Chapter 2: View Patterns</Text>
<Text style={styles.text}>
Enter your name below and see what happens.
</Text>
<TextInput
style={styles.input}

onChangeText={name => this.setState({name})}
/>
</View>
);
}
// ... styles skipped for clarity in a book, check source files.

If a user enters text in the TextInput component, then we display the entered text in a short greeting. Conditional rendering uses state to check whether the name has been defined or not. As the user types, the onChangeText event handler is invoked, and the function we passed updates the state with the new name.

Sometimes, native keyboards may overlap with your View component and hide important information. Please get familiar with the  KeyboardAvoidingView component if this is the case in your app.
Check out  https://facebook.github.io/react-native/docs/keyboardavoidingview.html for more information.
主站蜘蛛池模板: 阿尔山市| 吉隆县| 仙游县| 南江县| 丹寨县| 昌黎县| 建昌县| 大悟县| 北宁市| 晋城| 和林格尔县| 锡林郭勒盟| 会泽县| 内黄县| 古丈县| 凌云县| 博乐市| 甘德县| 青川县| 镇江市| 宿松县| 洛阳市| 易门县| 三门县| 河北区| 和平区| 随州市| 民权县| 板桥市| 沧源| 临汾市| 视频| 平定县| 延庆县| 民乐县| 沙田区| 嵊泗县| 措勤县| 皮山县| 攀枝花市| 高雄市|