ReactNative之基本组件(七)

2017-10-13  本文已影响18人  攻克乃还_

一.View

二.TouchableOpacity

            <View style={styles.mainStyle}>
                <TouchableOpacity activeOpacity={0.7}
                                  onPress={()=>{
                                      alert('点击')
                                  }}
                                  onLongPress={()=>{
                                      alert('长按')
                                  }}
                                  onPressIn={()=>{
                                      alert('手指按下')
                                  }}
                                  onPressOut={()=>{
                                      alert('手指抬起')
                                  }}
                                  disabled={true}
                >
                    <View style={styles.redViewStyle}></View>
                </TouchableOpacity>
            </View>

三.Text

numberOfLines:最大行数
selectable:决定客户是否可以选中文本复制粘贴,默认false
suppressHighlighting:默认有灰色阴影,想取消就设置为true
               <Text numberOfLines={1}
                      selectable={true}
                      style={styles.textStyle}
                      onPress={()=>{
                          console.log('点击文本');
                      }}
                      suppressHighlighting={true}
                >
                    Hello
                </Text>
color:字体颜色 

fontSize:字体 fontWeight enum('normal', 'bold', '100', '200', '300', '400', '500', '600', '700', '800', '900') 
指定字体的粗细。大多数字体都支持'normal'和'bold'值。如果某个字体不支持,则会自动选择最接近的值。 

lineHeight:行高 

textAlign enum('auto', 'left', 'right', 'center', 'justify') 
指定文本的对齐方式。其中'justify'值仅iOS支持,在Android上会变为left

四.Button

color color :文本的颜色(iOS),或是按钮的背景色(Android)

disabled bool :设置为true时此按钮将不可点击

onPress function :用户点击此按钮时所调用的处理函数

title string :按钮内显示的文本
                <Button title="按钮"
                        color='red'
                        onPress={()=>{
                            alert('点击按钮')
                        }}
                >
                </Button>

五.TextInput

autoFocus:自动获取焦点, 如果为true,在componentDidMount后会获得焦点。默认为false 

blurOnSubmit: true按回车时候自动退出键盘,但必须是英文键盘

editable:文本框是否可以编辑,默认值为true

keyboardType enum("default", 'numeric', 'email-address', "ascii-capable", 'numbers-and-punctuation', 'url', 'number-pad', 'phone-pad', 'name-phone-pad', 'decimal-pad', 'twitter', 'web-search') 键盘类型 

maxLength:最大字符数,显示输入文本长度 

multiline:默认文本输入框只能一行,true可多行输入

placeholder: 占位文字 

placeholderTextColor:占位字符串显示的文字颜色 

returnKeyType enum('done', 'go', 'next', 'search', 'send', 'none', 'previous', 'default', 'emergency-call', 'google', 'join', 'route', 'yahoo') #:决定键盘右下角按钮显示的内容 

secureTextEntry:是否安全输入,注意:多行无效果 

selectionColor:设置光标颜色 

clearButtonMode enum('never', 'while-editing', 'unless-editing', 'always') : 显示“清除”按钮 

clearTextOnFocus: 重新获取焦点后,是否清空之前的文本 

enablesReturnKeyAutomatically: 默认false。为true时,文本框内没有文字的时候,键盘禁用确认按钮。
// 清空输入框的内容
clear() 
onBlur:文本框失去焦点
onChange:内容变化
onChangeText: 内容变化时调用此函数, 改变后的文字作为参数传递
onEndEditing:当文本输入结束后调用此回调函数
onFocus:当文本框获得焦点的时候调用此回调函数
onSubmitEditing:此回调函数当软键盘的确定/提交按钮被按下的时候调用此函数。如果multiline={true},此属性不可用
onKeyPress:当一个键被按下的时候调用此回调。传递给回调函数的参数为{ nativeEvent: { key: keyValue } },其中keyValue即为被按下的键。会在onChange之前调用
 <View style={styles.mainViewStyle}>
                <TextInput placeholder={'占位文字'}
                           style={styles.textStyle}
                           //multiline={true}
                           clearButtonMode="always"
                           secureTextEntry={true}
                           autoFocus={true}
                           blurOnSubmit={true}
                           selectionColor="red"
                           clearTextOnFocus="true"

                           onBlur={()=>{
                           console.log('文本框失去焦点');
                           }}
                           onChangeText={(text)=>{
                               console.log('文字改变'+text)
                           }}
                           onEndEditing={()=>{
                               console.log('文本框结束编辑');
                           }}
                           onFocus={()=>{
                               console.log('获取焦点');
                           }}
                           onSubmitEditing={()=>{
                               console.log('点击提交按钮');
                           }}
                />
            </View>

六.Image

                <Image source={{uri:'http://img01.youxiaoshuo.com/portal/201703/21/083647y43dl1j14s8s3g99.jpg'}}
                       style={styles.imageStyle}
                />
                <Image source={require('./Img/chaolan.jpeg')}
                       style={styles.imageStyle}
                />
                <Image source={{uri:'wukong'}}
                       style={styles.imageStyle}
                />
blurRadius :图片模糊

defaultSource  {uri: string, width: number, height: number, scale: number} 
:占位图片

resizeMode enum('cover', 'contain', 'stretch', 'repeat', 'center') 
决定图片尺寸大小

cover: 在保持图片宽高比的前提下缩放图片,直到宽度和高度都大于等于容器视图的尺寸

contain: 在保持图片宽高比的前提下缩放图片,直到宽度和高度都小于等于容器视图的尺寸

stretch: 拉伸图片且不维持宽高比,直到宽高都刚好填满容器

repeat: 重复平铺图片直到填满容器。图片会维持原始尺寸。仅iOS可用

center: 居中不拉伸

上一篇下一篇

猜你喜欢

热点阅读