[React Native] TextInput
TextInput
μ¬μ©μλ‘λΆν° ν μ€νΈλ₯Ό μ λ ₯λ°μ μ μλ μ λ ₯ νλλ₯Ό μμ±
π€³π»Β μ£Όμ νΉμ§:
- ν
μ€νΈ μ
λ ₯:
TextInput
μ μ¬μ©μκ° ν μ€νΈλ₯Ό μ λ ₯ν μ μλ μ λ ₯ νλλ₯Ό μ 곡ν©λλ€. - λ€μν μ΅μ
:
TextInput
μ λ€μν μ΅μ μ ν΅ν΄ ν μ€νΈ μ λ ₯μ λμμ 컀μ€ν°λ§μ΄μ§ν μ μμ΅λλ€. μ΄μ λ΅λ³μμ μ€λͺ ν μμ±μ μ¬μ©νμ¬ ν μ€νΈ μ λ ₯μ μ μ΄ν μ μμ΅λλ€. - μ΄λ²€νΈ μ²λ¦¬:
onChangeText
,onSubmitEditing
,onFocus
,onBlur
λ±μ μ΄λ²€νΈλ₯Ό νμ©νμ¬ μ¬μ©μμ μ λ ₯μ λ°μν μ μμ΅λλ€. - λ€μ€ μ€ μ
λ ₯:
multiline
μμ±μ νμ±ννλ©΄ μ¬λ¬ μ€μ ν μ€νΈ μ λ ₯μ μ²λ¦¬ν μ μμ΅λλ€. - ν€λ³΄λ μ μ΄:
keyboardType
μ μ¬μ©νμ¬ λ€μν ν€λ³΄λ μ νμ μ€μ ν μ μμΌλ©°,secureTextEntry
λ₯Ό μ¬μ©νμ¬ λΉλ°λ²νΈ μ λ ₯μ μ²λ¦¬ν μ μμ΅λλ€. - ν
μ€νΈ μ€νμΌλ§:
style
μμ±μ μ¬μ©νμ¬ μ λ ₯ νλμ μ€νμΌμ μ§μ ν μ μμ΅λλ€. - νλ μ΄μ€νλ ν
μ€νΈ:
placeholder
μμ±μ μ¬μ©νμ¬ μ λ ₯ νλμ νλ μ΄μ€νλ ν μ€νΈλ₯Ό νμν μ μμ΅λλ€.
π€³π»Β μ¬μ© λ°©λ²:
FlatList
λ₯Ό μ¬μ©νκΈ° μν΄μλ λ€μ λ¨κ³λ₯Ό λ°λ¦
λλ€:
- TextInput μ»΄ν¬λνΈ μν¬νΈ:
import { TextInput } from "react-native";
- TextInput μ»΄ν¬λνΈ μ¬μ©
import React, { useState } from "react";
import { View, TextInput } from "react-native";
function MyTextInput() {
const [text, setText] = useState(""); // μνλ₯Ό ν΅ν΄ ν
μ€νΈ κ°μ κ΄λ¦¬ν©λλ€
const handleChangeText = (newText) => {
setText(newText); // ν
μ€νΈκ° λ³κ²½λ λ μνλ₯Ό μ
λ°μ΄νΈν©λλ€
};
return (
<View>
<TextInput
value={text}
onChangeText={handleChangeText}
placeholder="ν
μ€νΈλ₯Ό μ
λ ₯νμΈμ"
/>
</View>
);
}
export default MyTextInput;
- μν κ΄λ¦¬:
TextInput
μ κ°μ λ³κ²½νλ €λ©΄ μν(state)λ₯Ό μ¬μ©ν©λλ€. μ μμ μμλthis.state.text
λ₯Ό ν΅ν΄ νμ¬μ ν μ€νΈ κ°μ κ΄λ¦¬νκ³ μμ΅λλ€. - μ΄λ²€νΈ μ²λ¦¬:
onChangeText
,onSubmitEditing
,onFocus
,onBlur
λ±μ μ΄λ²€νΈλ₯Ό μ¬μ©νμ¬ μ¬μ©μ μ λ ₯μ λ°μνκ±°λ νΉμ λμμ μνν μ μμ΅λλ€. - ν€λ³΄λ μ μ΄:
keyboardType
μμ±μ μ¬μ©νμ¬ μνλ ν€λ³΄λ μ νμ μ ννκ³ ,secureTextEntry
λ₯Ό μ¬μ©νμ¬ λΉλ°λ²νΈ μ λ ₯μ νμ±νν©λλ€. - λ€μ€ μ€ μ
λ ₯:
multiline
μμ±μtrue
λ‘ μ€μ νμ¬ μ¬λ¬ μ€μ ν μ€νΈ μ λ ₯μ μ²λ¦¬ν μ μμ΅λλ€. - μ€νμΌλ§:
style
μμ±μ μ¬μ©νμ¬ μ λ ₯ νλμ μ€νμΌμ μ§μ ν©λλ€. μλ₯Ό λ€μ΄, ν°νΈ ν¬κΈ°, μμ, λ°°κ²½μ λ±μ μ€μ ν μ μμ΅λλ€.
π€³π»Β μμ± :
value
(string):- νμ¬ ν μ€νΈ μ λ ₯ νλμ κ°μ μ μ΄νλ λ° μ¬μ©λ©λλ€. μ΄ κ°μ μ€μ νλ©΄ μ λ ₯ νλμ λ΄μ©μ΄ λ³κ²½λ©λλ€.
defaultValue
(string):- μ΄κΈ° ν μ€νΈ μ λ ₯ νλμ κ°μ μ€μ ν λ μ¬μ©λ©λλ€. μ¬μ©μκ° μ λ ₯νλ λμ μ΄ κ°μ λ³κ²½λμ§ μμ΅λλ€.
placeholder
(string):- μ λ ₯ νλμ μ무 κ°λ μμ λ νμλλ νλ μ΄μ€νλ ν μ€νΈλ₯Ό μ€μ ν©λλ€.
placeholderTextColor
(string):- νλ μ΄μ€νλ ν μ€νΈμ ν μ€νΈ μμμ μ€μ ν©λλ€.
editable
(boolean):- μ¬μ©μ μ
λ ₯μ νμ©ν μ§ μ¬λΆλ₯Ό κ²°μ ν©λλ€.
false
λ‘ μ€μ νλ©΄ μ λ ₯ νλκ° μ½κΈ° μ μ© μνκ° λ©λλ€.
- μ¬μ©μ μ
λ ₯μ νμ©ν μ§ μ¬λΆλ₯Ό κ²°μ ν©λλ€.
maxLength
(number):- μ λ ₯ νλμ μ λ ₯ν μ μλ μ΅λ λ¬Έμ μλ₯Ό μ νν©λλ€.
keyboardType
(string):- ν€λ³΄λμ μ’ λ₯λ₯Ό μ€μ ν©λλ€. μλ₯Ό λ€μ΄, βnumericβ, βemail-addressβ, βphone-padβ λ±μ΄ μμ΅λλ€.
autoCapitalize
(string):- μλ λλ¬Έμ λ³νμ μ€μ ν©λλ€. βnoneβ, βsentencesβ, βwordsβ, βcharactersβ λ±μ κ°μ κ°μ§ μ μμ΅λλ€.
autoCorrect
(boolean):- μλ μμ μ νμ±ν λλ λΉνμ±νν©λλ€. μ¬μ©μκ° μ λ ₯νλ λμ λ§μΆ€λ² κ΅μ μ μνν μ§ μ¬λΆλ₯Ό κ²°μ ν©λλ€.
secureTextEntry
(boolean):- λΉλ°λ²νΈ μ λ ₯ νλλ₯Ό λ§λ€ λ μ¬μ©λλ©°, μ λ ₯ν ν μ€νΈλ₯Ό λ§μ€νΉνμ¬ λ³΄νΈν©λλ€.
onChangeText
(function):- μ λ ₯ νλμ ν μ€νΈκ° λ³κ²½λ λ νΈμΆλλ μ½λ°± ν¨μλ₯Ό μ μν©λλ€.
onSubmitEditing
(function):- μ¬μ©μκ° μ λ ₯μ μλ£νκ³ βμλ£β λλ βλ€μβ λ²νΌμ λλ μ λ νΈμΆλλ μ½λ°± ν¨μλ₯Ό μ μν©λλ€.
onFocus
(function):- μ λ ₯ νλκ° ν¬μ»€μ€λ₯Ό λ°μμ λ νΈμΆλλ μ½λ°± ν¨μλ₯Ό μ μν©λλ€.
onBlur
(function):- μ λ ₯ νλκ° ν¬μ»€μ€λ₯Ό μμμ λ νΈμΆλλ μ½λ°± ν¨μλ₯Ό μ μν©λλ€.
style
(object):- μ λ ₯ νλμ μ€νμΌμ μ§μ νλλ° μ¬μ©λ©λλ€. ν°νΈ ν¬κΈ°, μμ, λ°°κ²½μ λ±μ μ€μ ν μ μμ΅λλ€.
multiline
(boolean):- μ¬λ¬ μ€μ ν μ€νΈ μ λ ₯μ κ°λ₯νκ² ν©λλ€.
numberOfLines
(number):multiline
μ΄ νμ±νλ κ²½μ° νμν μ€ μλ₯Ό μ€μ ν©λλ€.