RN PickerView组件
pickerView多滚轮选中组件
1、功能说明
页面底部弹出的半屏滚轮选择弹窗
目前仅支持到双滚轮,三滚轮的后期再扩展
2、组件效果
单滚轮
双滚轮
3、数据格式
单滚轮数据
{option: [{text: "双轴",value: "685908"},{text: "三轴",value: "685909"},{text: "其他",value: "685932"}],paramname: "zhoushu",//参数名title: "轴数"
}双滚轮数据
{option: [{isparent: true,option: [{isparent: false,paramname: "shangpaiyuefen",text: "1",value: "515681"},{isparent: false,paramname: "shangpaiyuefen",text: "2",value: "515682"}],paramname: "shangpainian",text: "2017年",value: "2017"},{isparent: true,option: [{isparent: false,paramname: "shangpaiyuefen",text: "10",value: "515690"},{isparent: false,paramname: "shangpaiyuefen",text: "11",value: "515691"},{isparent: false,paramname: "shangpaiyuefen",text: "12",value: "515692"}],paramname: "shangpainian",text: "2016年",value: "2016"}],paramname: "buytime",title: "出厂年限"
}
4、代码演示
/*** @description 单滚轮* @author gongchenghui* @version 2018.11.05*/
import React, { Component } from "react";
import {StyleSheet,Text,ScrollView,Image,Alert,TextInput,View,TouchableOpacity,TouchableHighlight,Dimensions
} from "react-native";
import { PickerView } from "rn-design";
const styles = StyleSheet.create({okText: {color: "#dc4931"},dismissText: {color: "#434345"},title: {fontSize: 16,color: "#999"},button: {borderWidth: 1,borderColor: "red",padding: 5,width: 100}
});
const pickerData = {lettersort: false,option: [{text: "双轴",value: "685908"},{text: "三轴",value: "685909"},{text: "其他",value: "685932"}],paramid: 12286,paramname: "zhoushu",title: "轴数",viewtype: "1"
};export default class Demo extends Component {constructor(props) {super(props);this.state = {};}setPickerData = (value) => {// console.log(value);};render() {return (<View style={styles.flex}><PickerViewdata={pickerData}onChange={(item) => this.setPickerData(item)}okText={<Text style={styles.okText}>确定</Text>}dismissText={<Text style={styles.dismissText}>取消</Text>}title={<Text style={styles.title}>请选择时间</Text>}><TouchableHighlightactiveOpacity={0.5}style={[styles.button]}underlayColor="#a9d9d4"><Text>show popup</Text></TouchableHighlight></PickerView></View>);}
}
5、API
参数 | 说明 | 类型 | 默认值 |
---|---|---|---|
data | pickerView展示数据 | object | 无 |
title |
pickerView标题 如果传入的是 React.ReactElement一定要 自定义样式,否则不会继承组件设置的默认样式 |
string\React.ReactElement | 请选择 |
okText | pickerView确定按钮文案 | string\React.ReactElement | 确定 |
dismissText | pickerView关闭按钮文案 | string\React.ReactElement | 取消 |
styles |
pickerView弹窗样式 (已添加弹窗样式,此参数谨慎使用) |
StyleSheet.create | - |
itemStyle | pickerView滚轮字体设置 | StyleSheet.create |
{ color: “#333”, fontSIze: 18 } |
onSelectChange |
pickerView选中结果 回调结果示例: [{“text”:“双轴”,“value”:“685908”, “paramname”:“zhoushu”}] [ {“isparent”:true, “paramname”:“cjshijian”, “text”:“2017”,“value”:“2017”}, {“isparent”:false, “paramname”:“cjshijian_month”, “text”:“7”,“value”:“7”}] |
function | 无 |
注:组件调用时,把需要点击的DOM模块包裹在PickerView标签里面
源码地址
RN PickerView组件相关推荐
- RN自定义组件封装 - 播放类似PPT动画
1. 前言 近日,被安排做一个开场动画的任务.虽然RN提供了Animated来自定义动画,但是本次动画中的元素颇多,交互甚烦...在完成任务的同时,发现很多步骤其实是重复的,于是封装了一个小组件记录一 ...
- RN FlatList组件
长列表或者无限下拉列表是最常见的应用场景之一.RN 提供的 ListView 组件,在长列表这种数据量大的场景下,性能堪忧.而在最新的 0.43 版本中,提供了 FlatList 组件,或许就是你需要 ...
- RN子组件获取redux数据
一.可以用Provider组件包起要用redux数据的组件,传给他store <Provider store={store}><App/><Index/> < ...
- rn 函数式组件获取子组件的实例
class式组件要获取子组件的实例只要用ref就可以了,但是函数式组件就要复杂一点 函数式组件要给子组件直接绑定ref是不成功的,要求子组件使用forward创建才可以,如下 const ChildR ...
- RN图表组件react-native-charts-wrapper
文章目录 组件安装 组件使用 组件属性 一. 散点图组件(ScatterChart) 二. 饼图组件(PieChart) 三. 折线图组件(LineChart) 五. 柱状图(BarChart) 支持 ...
- RN ScrollView组件
ScrollView组件允许用户左.右或者上.下滑动来查看原来显示在屏幕外的内容 一.ScrollView组件常用属性 1.horizontal:布尔类型属性,当他为true时,ScrollView的 ...
- rn 开关组件Switch
1.引入import { View, Switch, StyleSheet } from "react-native";2.使用<SwitchtrackColor={{ fa ...
- react native利用webvView嵌入h5页面以及RN与webView的通信
前言:这边主要是记录下,在react native中如何使用h5页面,以及h5页面发生点击,或者跳转到react native时,如何与react native进行通信. 一.react native ...
- React Native 下载组件以及npm常用命令
一.React Native 下载组件: RN的组件都是需要从网上下载的.正常来说,我们通过npm start打开服务器之后,直接用npm下载即可.常用的组件,例如按钮,滚动等,都是可以直接下载的.下 ...
最新文章
- 【组队学习】【35期】数据可视化(Matplotlib)
- uni-app用着不香吗?Android,iOS,小程序一套代码吃通所有
- CSDN中Markdown编辑器的数学公式编写(非常详细!)
- python 命令-python 处理命令行参数
- 你可能没注意的CSS单位
- Ribbon源码解析(二)
- hadoop练习处理地震数据
- PAT乙类1007之素数对猜想
- 80%的软件环境管理问题,根因都在这里
- Linux基础管理——磁盘管理及文件系统(全)
- cvMat结构体详解
- php字符串替换多余逗号_PHP字符过滤函数去除字符串最后一个逗号(rtrim)_php技巧...
- jquery系列教程1-选择器全解
- c++11 类中关于default、explict、implicit、noexcept、final的详解
- 数据挖掘概念与技术(第三版)课后答案——第五章
- 信息安全数学基础(近世代数部分)
- 【雕爷学编程】Arduino动手做(3)---微波雷达感应开关模块
- iOS开发-plist文件的常用操作
- pycharm中TODO注释
- 文件 服务器属性,去除服务器文件上的RHS属性
热门文章
- 位运算的简单应用,计算无符号的数中二进制位中值为 1 的个数
- 人工智能为失散家人寻找“回家路”
- 关于C#的数据绑定,存取数据库实例详解 (三)
- memcached演练(2) 访问memcached服务
- maven spring 使用memcached方法
- 在gns3中搭建VTP演示实验
- HLG 1334 最好的心情[lis 变形]
- web服务器IIS详细错误代码以及解释
- 从xls或者txt等格式的文件中读取编码码率以及PSNR
- 原有磁盘上创建lvm_lt;Linuxgt; LVM 原理及应用