React Native06 - TextInput組件箫踩、Touchable系列組件、QQ登錄界面

前言

本篇主要內(nèi)容如下:

  • TextInput組件
  • Touchable系列組件
  • QQ登錄界面案例

一锦担、TextInput組件

  • 通過鍵盤將文本輸入到應(yīng)用程序的一個基本組件慨削,寫法如下:

    <TextInput />
    
  • 組件的屬性
    1. placeholder
    占位符缚态,在輸入前顯示的文本內(nèi)容。
    
    1. value

      文本輸入框的默認(rèn)值浆熔,該值設(shè)置過后姨俩,不能在輸入框內(nèi)直接修改,在下一篇會講解修改方式调窍,這個屬性在本篇先不用管邓萨。

    2. placeholderTextColor

      占位符文本的顏色

    3. multiline

      如果為 true,表示多行輸入

    4. editable

      默認(rèn)為 true宝剖。如果設(shè)置為 false 表示不可編輯歉甚。

    5. autoFocus

      如果為 true,則自動獲取焦點

    6. maxLength

      能夠輸入的最長字符數(shù)

    7. secureTextEntry

      默認(rèn)為 false赖钞。如果為 true雪营,則像密碼框一樣隱藏輸入內(nèi)容衡便。

    8. underlineColorAndroid

      設(shè)置默認(rèn)下劃線的顏色,設(shè)置為transparent谴餐,相當(dāng)于讓下劃線消失

  • 組件的方法
    1. onChangeText:當(dāng)文本發(fā)生變化時呆抑,調(diào)用該函數(shù)。
    2. onEndEditing:當(dāng)結(jié)束編輯時,調(diào)用該函數(shù)妹萨。也就是當(dāng)輸入框上沒有光標(biāo)去閃爍時代表輸入結(jié)束炫欺。
    3. onBlur:失去焦點時觸發(fā),和onEndEditong基本上是一樣的
    4. onFocus:獲得焦點時觸發(fā)树姨。
    5. onSubmitEditing:當(dāng)結(jié)束編輯后桥状,點擊鍵盤的提交按鈕觸發(fā)該事件辅斟。
  • 接下來通過demo1來了解上面各個屬性的用法
    import React, { Component } from 'react';
    import {
        AppRegistry,
        StyleSheet,
        Text,
        View,
        TextInput
    } from 'react-native';
    
    var MyTextInput = React.createClass({
    
         render(){
    
              return (
    
                     <View style={styles.outerView}>
    
                        <TextInput style={styles.myTextInput}
    
                             placeholder={"請輸入密碼"}
                             placeholderTextColor={"red"}
                             multiline={true}
                             editable={true}
                             autoFocus={true}
                             maxLength={15}
                             secureTextEntry={true}
                             underlineColorAndroid={"transparent"}   
          
                             onChangeText={(text)=>this.changeText(text)}
                             onEndEditing={()=>this.endEditing()}
                             onBlur={()=>this.lostblur()}
                             onFocus={()=>this.getblur()}
                             onSubmitEditing={()=>this.submitEditing()}
    
                          />
    
                   </View>
    
              )
          },
    
          changeText(text){
    
                console.log(text);
    
          },
    
           endEditing(){
    
                 alert("結(jié)束編輯");
           },
    
           lostblur(){
    
                alert("失去焦點");
           },
    
           getblur(){
    
                alert("得到焦點");
           },
    
           submitEditing(){
    
                alert("提交");
           }
    })
    
    const styles = StyleSheet.create({
    
           outerView:{
    
                flex:1,
                marginTop:20,
                flexDirection:"row",
           },
    
           myTextInput:{
    
                flex:4,
                height:50,
           },
    })
    
    AppRegistry.registerComponent('demo1', () => MyTextInput);
    

二查邢、組件Touchable系列

  • RN的很多組件默認(rèn)都不支持點擊,目前我們學(xué)習(xí)的能夠點擊的組件只有一個Text缓苛,之前我們可以使用Text來實現(xiàn)按鈕邓深,RN其實給我們提供了幾個組件專門讓我們給默認(rèn)不能點擊的組件設(shè)置點擊事件。

  • 該系列組件包括四種分別為:TouchableHighlight(觸摸點擊高亮效果),TouchableNativeFeedback(僅限android平臺),TouchableOpacity(透明度變化),TouchableWithoutFeedback钢属。其中最后一個控件是觸摸點擊不帶反饋效果的淆党,另外三個都是有反饋效果讶凉。可以這樣理解前面三個都是繼承自TouchableWithoutFeedback擴展而來荷憋。本篇我只講解一個TouchableOpacity褐望,其他的有興趣可以自行研究。

  • TouchableOpacity(透明度變化)
    1. 該組件封裝了響應(yīng)觸摸事件实蔽,當(dāng)點擊按下的時候谨读,該組件的透明度會降低

    2. 常用屬性

      • activeOpacity number

        設(shè)置組件在進行觸摸的時候,顯示的不透明度(取值0-1之間)

      • underlayColor

        當(dāng)觸摸或者點擊控件的時候顯示出的顏色

      • style

        可以設(shè)置控件的風(fēng)格演示铐尚,該風(fēng)格演示可以參考View組件的style

    3. 常見的觸摸事件

      注意:調(diào)用得用箭頭函數(shù)哆姻,比如

       onPress={()=>this.press()}
      
    • onPress 點擊

    • onPressIn 按下

    • onPressOut 抬起

    • onLongPress 長按不放

  • 使用方式

    將想要實現(xiàn)點擊的組件用Touchable系列組件給包含起來,然后給Touchable系列組件添加觸摸事件即可,比如讓View組價可點擊

     <TouchableOpacity onPress={()=>this.press()}>'
         <View><View/> 
     <TouchableOpacity/>
    

三统舀、QQ登錄界面

最終效果如下:

點擊按鈕可以彈出當(dāng)前輸入的賬號密碼

代碼及注釋
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末碉就,一起剝皮案震驚了整個濱河市闷串,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌碉熄,老刑警劉巖肋拔,帶你破解...
    沈念sama閱讀 218,755評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件凉蜂,死亡現(xiàn)場離奇詭異,居然都是意外死亡茎杂,警方通過查閱死者的電腦和手機纫雁,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,305評論 3 395
  • 文/潘曉璐 我一進店門轧邪,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人曾棕,你說我怎么就攤上這事菜循∩暧龋” “怎么了?”我有些...
    開封第一講書人閱讀 165,138評論 0 355
  • 文/不壞的土叔 我叫張陵勺远,是天一觀的道長胶逢。 經(jīng)常有香客問我厅瞎,道長和簸,這世上最難降的妖魔是什么碟刺? 我笑而不...
    開封第一講書人閱讀 58,791評論 1 295
  • 正文 為了忘掉前任半沽,我火速辦了婚禮,結(jié)果婚禮上者填,老公的妹妹穿的比我還像新娘。我一直安慰自己心墅,他們只是感情好重挑,可當(dāng)我...
    茶點故事閱讀 67,794評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著刺覆,像睡著了一般史煎。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上氢橙,一...
    開封第一講書人閱讀 51,631評論 1 305
  • 那天恬偷,我揣著相機與錄音,去河邊找鬼袍患。 笑死坦康,一個胖子當(dāng)著我的面吹牛滞欠,可吹牛的內(nèi)容都是我干的肆良。 我是一名探鬼主播逸绎,決...
    沈念sama閱讀 40,362評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼棺牧,長吁一口氣:“原來是場噩夢啊……” “哼沮翔!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起疲牵,我...
    開封第一講書人閱讀 39,264評論 0 276
  • 序言:老撾萬榮一對情侶失蹤榆鼠,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后识啦,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體神妹,經(jīng)...
    沈念sama閱讀 45,724評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,900評論 3 336
  • 正文 我和宋清朗相戀三年冕茅,在試婚紗的時候發(fā)現(xiàn)自己被綠了姨伤。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片庸疾。...
    茶點故事閱讀 40,040評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡届慈,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出金顿,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 35,742評論 5 346
  • 正文 年R本政府宣布礁凡,位于F島的核電站,受9級特大地震影響顷牌,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜窟蓝,卻給世界環(huán)境...
    茶點故事閱讀 41,364評論 3 330
  • 文/蒙蒙 一运挫、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧谁帕,春花似錦、人聲如沸匈挖。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,944評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽择膝。三九已至,卻和暖如春调榄,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背筐带。 一陣腳步聲響...
    開封第一講書人閱讀 33,060評論 1 270
  • 我被黑心中介騙來泰國打工伦籍, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人帖鸦。 一個月前我還...
    沈念sama閱讀 48,247評論 3 371
  • 正文 我出身青樓作儿,卻偏偏與公主長得像馋劈,于是被迫代替她去往敵國和親晾嘶。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,979評論 2 355

推薦閱讀更多精彩內(nèi)容