RN開發(fā)之如何使用TextInput組件來處理用戶輸入

TextInput是一個允許用戶輸入文本的基礎組件。它有一個名為onChangeText的屬性,此屬性接受一個函數,而此函數會在文本變化時被調用。另外還有一個名為onSubmitEditing的屬性,會在文本被提交后(用戶按下軟鍵盤上的提交鍵)調用。
假如我們要實現(xiàn)當用戶輸入時,實時將其以單詞為單位翻譯為另一種文字。我們假設這另一種文字來自某個吃貨星球,只有一個單詞:??。所以“Hello there Bob”將會被翻譯為“?? ?? ?? ”。

import React, { Component } from 'react';
import { Text,TextInput, View } from 'react-native';
export default class PizzaTranslator extends Component{
    render{
        return(
        <View style={{padding:10}}>
        <TextInput
        style={{height:40}}
        placeholder="type here to translate!"
        onChangeText={(text)=>this.setState({text})}
        value={this.state.text}
        />
        <Text style={{padding:10,fontSize:42}}>
        {this.state.split('').map((word)=>word&&'??').join('')}
        </Text>
        </View>
        );
    }
}

運行結果



在上面的例子里,我們把text保存到state中,因為它會隨著時間變化。
TextInput可能是天然具有“動態(tài)狀態(tài)”的最簡單的組件了。下面我們來看看另一類輸入組件,先從處理觸摸開始學習。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容