react native的单选按钮react-native-radio-master
随着项目对react native的使用,碰到了很多RN的坑。。。只可惜我不是职业前端,让我一个php来做页面,是在是有些勉强了。。这篇主要是实现RN的单选按钮,上传表单的时候使用的。
github地址:https://github.com/antiantian/radio
**
一、安装组件
**
1、npm i react-native-radio-master –save
2、这个组件不需要npm link
3、项目引用:import RadioModal from ‘react-native-radio-master’;
二、引入组件到项目
1、这个github上有明确的例子,猛的一看好像很麻烦,我们可以先把例子移植到自己的项目中:
import React,{Component} from 'react'
import {View,StyleSheet,Navigator,TouchableHighlight,Text,ScrollView,Image,ListView,
} from 'react-native'
var Dimensions = require('Dimensions');
var width=Dimensions.get('window').width;
var height=Dimensions.get('window').height;
import RadioModal from 'react-native-radio-master';
var datas= [{"selecteId": 13,"content": "Apple","selected": false},{"selecteId": 14,"content": "Banana","selected": false},{"selecteId": 15,"content": "Orange","selected": false},{"selecteId": 16,"content": "Watermelon","selected": true},{"selecteId": 17,"content": "Grape","selected": false}] export default class RadioModalItem extends Component{constructor(props){super(props);this.state = {language:datas[3].selecteId,item:datas[3].content,initItem:'选项a',initId:'0'};}render(){return (<View style={{padding:20,flex:1,flexDirection:'column'}}><Text style={{backgroundColor:'#ffffff',color:'#414141',padding:5,}}>The selected:<Text style={{color:'#ff0000'}}>{this.state.item}</Text> </Text> <Text style={{backgroundColor:'#ffffff',color:'#414141',padding:5,}}> Unique identification:<Text style={{color:'#ff0000'}}>{this.state.language}</Text></Text><RadioModal
options={{id:'selecteId',value:'content',disabled:'selected'}}innerStyle={{width:(width-80)/2}}txtColor={'#000000'}noneColor={'#efefef'}selectedValue={this.state.language}onValueChange={(id,item) => this.setState({language: id,item:item})}seledImg={require('./imgs/selected.png')}selImg={require('./imgs/select.png')}selnoneImg={require('./imgs/selectnone.png')}dataOption={datas}style={{ flexDirection:'row',flexWrap:'wrap',alignItems:'flex-start',flex:1,backgroundColor:'#ffffff',padding:5,marginTop:10}} /><Text style={{backgroundColor:'#ffffff',color:'#414141',padding:5,}}>The selected:<Text style={{color:'#ff0000'}}>{this.state.initItem}</Text> </Text> <Text style={{backgroundColor:'#ffffff',color:'#414141',padding:5,}}> Unique identification:<Text style={{color:'#ff0000'}}>{this.state.initId}</Text></Text><RadioModal
selectedValue={this.state.initId}onValueChange={(id,item) => this.setState({initId: id,initItem:item})}style={{ flexDirection:'row',flexWrap:'wrap',alignItems:'flex-start',flex:1,backgroundColor:'#ffffff',padding:5,marginTop:10}} ><Text value="0">选项a</Text><Text value="1" disabled="true">选项b</Text><Text value="2">选项c</Text><Text value="3">选项d</Text></RadioModal></View>);}
}
2、这里会发现,作者给了两种方式,不过咱们大多数情况下只需要用一种就行,比如我这里:
我这边是把例子的代码删减了一部分,只用我需要的部分。源代码上面,你点击按钮,会显示你点击的哪一个
类似于这样的按钮
三、使用
1、我们需要的是获取选项框的id或者值。我这边需要的是选项框的值,所以:
onValueChange={(id,item) => this.selected({initItem:item})}
改动了一下onValueChange 函数,传给我们的selectd()方法一个参数,该参数就是选项框的值,
我们可以alert一下:
这里可以看到,我们把需要的选项框的值获取到了。接下来就是根据业务需求,开始你的表演。
end
react native的单选按钮react-native-radio-master相关推荐
- Web前端:React Native Web与React — 比较指南
React 是Facebook开发的用于构建交互式用户界面的JavaScript库.React 在 Apache 许可下作为开源软件提供,可用于个人和商业网站.客户端 Web 应用程序和服务器应用 ...
- 【React Native进阶】React Native Gesture Handler的使用
背景 说到React Navtive的性能优化,首先要了解React Native的运行机制.React Native程序主要运行在三个并行的线程上: JS Thread:我们写的JS代码逻辑都是在这 ...
- 如何在React Native中使用React JS Hooks?
In my articles, I'm going to be using either expo or snack online IDE and android emulator. 在我的文章中,我 ...
- 如何使用React,TypeScript和React测试库创建出色的用户体验
I'm always willing to learn, no matter how much I know. As a software engineer, my thirst for knowle ...
- react.js开发_2020 React.js开发人员路线图
react.js开发 成为阅读JS开发人员的插图指南,其中包含相关课程的链接 React JS或简称React是用于开发Web应用程序的前端或GUI的领先JavaScript库之一. 在Faceboo ...
- react 学习路线_2018 React JS路线图
react 学习路线 成为阅读JS开发人员的插图指南,其中包含相关课程的链接 React JS或简称React是用于开发Web应用程序的前端或GUI的领先JavaScript库之一. 在Faceboo ...
- 深入了解React新引擎:React Fiber
Facebook正在以流行的JavaScript框架React为基础开发一个全新的架构.这个名为React Fiber的全新设计改变了检测变更的方法和时机,借此可改进浏览器端和其他渲染设备的响应速度. ...
- 【React 基础】之 React 基本介绍、jsx 规则、模块与组件
React 全家桶 React 基础 React-Router 路由 PubSub + 消息管理库 Redux 集中式的状态管理 Ant-Design UI 组件库 - React 简介 官网 英文官 ...
- 什么是React为什么使用React什么时候使用React
什么是React? (What is React?) React.js often referred to as React or ReactJS is a JavaScript library re ...
- react开发插件-ES7 React/Redux/GraphQL/React-Native snippets
内容目录 ES7 React/Redux/GraphQL/React-Native snippets 插件 Basic Methods React React Native Redux PropTyp ...
最新文章
- poj3468 A Simple Problem with Integers
- 以前写的canvas 小游戏 贪吃蛇代码
- (转载) 数组a[]={3,5,2,4,1,8},要求从a中找出所有“和”等于10的子集
- Flutter开发之JSON及序列化(29)
- 在 ubuntu下面利用libpcap编程
- 构造方法的调用顺序和成员变量的初始化时机以及动态绑定
- 工程计价里面的表以及相关税额的计算
- vnpy软件架构分析
- iOS14更新了需要注意哪些适配
- Word VBA-标题设置
- excel筛选排序从小到大_EXCEL表格数据从小到大-Excel如何从小到大排列顺序
- windows无法访问指定设备路径或文件
- 【致远FAQ】V8.0sp1_单位管理员账号在流程督办监控中撤销流程后,流程中的人员会收到消息提醒吗
- 战略管理学习---第2章 战略目标
- HTML如何设置幻灯片大小和位置,PPT教程:教你如何在PPT母版中统一标题的位置、大小、样式 | 演示说...
- 16岁女孩攻陷著名安全企业HBGary
- 软件测试丨Git分支管理实操,搞定在线合并和本地合并
- java循环返回结果_Java 循环(for、while)中整数相减结果返回输出/的问题
- 8051单片机c语言编程模板,完美的8051单片机C语言编程模板.doc
- CASIA-OLHWDB2.0-2.2数据集wptt文件解析
热门文章
- mxnet is not presented
- jcenter下载慢
- No such file or directory: jupyter-1.0.0.dist-info\\METADATA
- CircleLoss测试
- linux RTX2080显卡驱动
- LibTorch NMS
- ubuntu 安装gcc 4.8.2
- cv2.calcOpticalFlowFarneback integer argument expected, got float
- python isinstance type区别
- hadoop3.0 分布式搭建/安装