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

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.
主站蜘蛛池模板: 新干县| 荆州市| 广平县| 绥滨县| 晋宁县| 新乡市| 台南县| 阿坝县| 顺昌县| 海晏县| 龙岩市| 灵山县| 满洲里市| 越西县| 施甸县| 车致| 东莞市| 安西县| 秦皇岛市| 子洲县| 涿鹿县| 九台市| 普陀区| 开化县| 云霄县| 南通市| 江都市| 崇仁县| 姜堰市| 永福县| 台山市| 瓦房店市| 七台河市| 肇州县| 大港区| 西乡县| 肇庆市| 海宁市| 海林市| 尼勒克县| 泸水县|