React Native组件Switch类似于iOS中的UISwitch;组件Slide类似于iOS中UIslider,组件Picker类似于iOS的UIPickerView。他们的使用方法和相关属性如下:

/**
* Sample React Native App
* https://github.com/facebook/react-native
* 周少停 2016-09-28
* Switch 开关组件 Picker 选择器 和slide 进度条
*/ import React, { Component } from 'react';
import {
AppRegistry,
StyleSheet,
Text,
View,
Switch,
Picker,
Slider
} from 'react-native'; class Project extends Component {
// 构造方法 相当于ES5的getInitialState方法
constructor(props) {
super(props);
// 初始状态
this.state = {
isOn:false,
pickerLabel:'苹果',
slideNum:0
};
} render() {
return (
<View style={styles.container}>
{/*--------------------------Switch-------------------------------*/}
<Switch
// disabled={true}//是否可以响应,默认为false,true是无法点击
onTintColor='blue' //开启时的背景颜色
thumbTintColor='yellow' //开关上原形按钮的颜色
tintColor='black' //关闭时背景颜色
onValueChange={() => this.setState({isOn: !this.state.isOn})} //当状态值发生变化值回调
value={this.state.isOn == true}//默认状态
/>
{/*--------------------------Picker-------------------------------*/}
<Picker style={{width:100,height:100}}
selectedValue = {this.state.pickerLabel}
onValueChange = {(e) => this.setState({pickerLabel:e})}>
<Picker.Item label="苹果" value="apple" />
<Picker.Item label="iPhone" value="手机" />
<Picker.Item label="苹果1" value="apple1" />
<Picker.Item label="iPhone1" value="手机1" />
<Picker.Item label="苹果2" value="apple2" />
<Picker.Item label="iPhone2" value="手机2" />
<Picker.Item label="苹果3" value="apple3" />
<Picker.Item label="iPhone3" value="手机3" />
</Picker>
{/*--------------------------Slide-------------------------------*/}
<Slider
// {...this.pops} //取到所有的该属性
// disabled = {true} //是否可滑动
// trackImage = {require('./img/1.jpg')} 滑道背景图片
// maximumTrackImage = {require('./img/2.jpg')} //滑道右侧侧背景图片
// minimumTrackImage = {require('./img/3.jpg')}//滑道左侧背景图片
// value = {10} //滑块的初始位置
minimumValue = {0} //最小之
maximumValue = {100} //最大值
step = {2} //步长,在minimumValue和maximumValue之间
maximumTrackTintColor = 'red' //滑道右侧的滑道颜色
minimumTrackTintColor = 'yellow' //滑道左侧的滑道颜色
onSlidingComplete = {(e)=>this.slideDone(e)} //停止滑动时调用,可以把当前值传过去
onValueChange = {(e)=>this.setState({slideNum:e})} //滑动时就调用,可以把当前值传过去
style={{marginTop:200,width:200}} />
<Text>Slide当前值:{this.state.slideNum}</Text>
</View>
);
}
slideDone(e){
alert(e);
}
} const styles = StyleSheet.create({
container: {
marginTop:30,
alignItems:'center'
}
}); AppRegistry.registerComponent('Project', () => Project);

  完整源码下载:https://github.com/pheromone/React-Native-1

React Native组件之Switch和Picker和Slide的更多相关文章

  1. React Native组件之Text

    React Native组件之Text相当于iOS中的UILabel. 其基本属性如下: /** * Sample React Native App * https://github.com/face ...

  2. React Native 组件之TextInput

    React Native 组件之TextInput类似于iOS中的UITextView或者UITextField,是作为一个文字输入的组件,下面的TextInput的用法和相关属性. /** * Sa ...

  3. beeshell —— 开源的 React Native 组件库

    介绍 beeshell 是一个 React Native 应用的基础组件库,基于 0.53.3 版本,提供一整套开箱即用的高质量组件,包含 JavaScript(以下简称 JS)组件和复合组件(包含 ...

  4. react native组件的生命周期

    react native组件的生命周期 一.当页面第一次加载时,会依次调用: constructor() componentWillMount(): 这个函数调用时机是在组件创建,并初始化了状态之后, ...

  5. react native组件的创建

    react native组件的创建 react文件加载顺序: react项目启动后,先加载index.js.在index.js中可以指向首页. import { AppRegistry } from ...

  6. React Native组件(三)Text组件解析

    相关文章 React Native探索系列 React Native组件系列 前言 此前介绍了最基本的View组件,接下来就是最常用的Text组件,对于Text组件的一些常用属性,这篇文章会给出简单的 ...

  7. React Native组件(二)View组件解析

    相关文章 React Native探索系列 React Native组件系列 前言 了解了RN的组件的生命周期后,我们接着来学习RN的具体的组件.View组件是最基本的组件,也是首先要掌握的组件,这一 ...

  8. Android React Native组件的生命周期及回调函数

    熟悉android的童鞋应该都清楚,android是有生命周期的,其很多组件也是有生命周期.今天小编和大家分享的React Native组件的生命周期,还不了解的童鞋,赶紧来围观吧 在android开 ...

  9. React Native组件解析(二)之Text

    React Native组件解析(二)之Text 1. 概述 Text组件对应于iOS的UILabel,Android的TextView,用来显示文本.但是Text组件的内部使用的并不是flexbox ...

随机推荐

  1. Python进程、线程、协程

    进程和线程的解释 进程(process)和线程(thread)是操作系统的基本概念,计算机的核心是CPU,它承担了所有的计算任务: 单个CPU一次只能运行一个任务,代表单个CPU总是运行一个进程,其他 ...

  2. python异常和错误(syntax errors 和 exceptions)

    语法错误 语法错误又被称解析错误 >>> for i in range(1..10):print(i) File "<stdin>", line 1 ...

  3. MyEclipse 10.7 添加JBOSS 6应用服务器

    首先,确保你的JAVA和JBOSS的环境变量配置正确然后,在myeclipse中,window->preferences->myeclipse->servers->JBOSS- ...

  4. 基于Node的PetShop,oauth2认证RESTful API

    前篇 - 基本认证,用户名密码 后篇 - OAuth2 认证 前文使用包passport实现了一个简单的用户名.密码认证.本文改用oauth2来实现更加安全的认证.全部代码在这里. OAUTH2 用户 ...

  5. Cheatsheet: 2015 07.01 ~ 07.31

    Java JBoss Drools Tutorial for Beginners Other A Simple File System RebornDB: the Next Generation Di ...

  6. SQL Prompt自定义代码片段

    新增代码片段: 代码片段管理: 代码片段中可以使用以下占位符:详见参考: $DATE$ 插入当前日期. $TIME$ 插入当前时间 $USER$ 插入当前电脑的用户名 $PASTE$ 插入剪切板内容 ...

  7. 运用EasyUI中datagrid读取数据库数据实现分页

    1dao层 package com.hanqi.dao; import java.util.ArrayList; import java.util.List; import org.hibernate ...

  8. 深入浅出设计模式——命令模式(Command Pattern)

    模式动机 在软件设计中,我们经常需要向某些对象发送请求,但是并不知道请求的接收者是谁,也不知道被请求的操作是哪个,我们只需在程序运行时指定具体的请求接收者即可,此时,可以使用命令模式来进行设计,使得请 ...

  9. List怎么遍历删除元素

    public static void main(String[] args) {  List<String> list = new ArrayList<String>();   ...

  10. Android性能优化篇

    很多App都会遇到以下几个常见的性能问题: 启动速度慢:界面跳转慢:事件响应慢:滑动和动画卡顿. 一.启动速度优化. 优化初始化任务: 1. 把一些初始化任务懒加载初始化 2. 把初始化任务并行化(异 ...