本教程的实现效果如下:
为了实现其淡入/淡出的覆盖效果, 还有取消按钮, 在此用了一个三方的组件, 大家可以先安装一下:
三方组件的地址:https://github.com/eyaleizenberg/react-native-custom-action-sheet (可以看看,也可以直接按我的步骤走)
1. 在terminal的该工程目录下运行: npm install react-native-custom-action-sheet --save
2. 然后运行: npm start
3. 具体实现代码如下:
import React, { Component } from 'react';
import {
AppRegistry,
StyleSheet,
Text,
View,
TouchableHighlight,
DatePickerIOS
} from 'react-native';
//这是一个三方组件 github地址:https://github.com/eyaleizenberg/react-native-custom-action-sheet
var CustomActionSheet = require('react-native-custom-action-sheet');
class Demo extends Component {
state = {
datePickerModalVisible: false, //选择器显隐标记
chooseDate: new Date() //选择的日期
};
_showDatePicker () { //切换显隐标记
this.setState({datePickerModalVisible: !this.state.datePickerModalVisible});
};
_onDateChange (date) { //改变日期state
alert(date); //弹出提示框: 显示你选择日期
this.setState({
chooseDate: date
});
};
render() {
let datePickerModal = ( //日期选择器组件 (根据标记赋值为 选择器 或 空)
this.state.datePickerModalVisible ?
<CustomActionSheet
modalVisible={this.state.datePickerModalVisible} //显隐标记
onCancel={()=>this._showDatePicker()}> //点击取消按钮 触发事件
<View style={styles.datePickerContainer}>
<DatePickerIOS
mode={"datetime"} //选择器模式: 'date'(日期), 'time'(时间), 'datetime'(日期和时间)
minimumDate={new Date()} //最小时间 (这里设置的是当前的时间)
minuteInterval={30} //最小时间间隔 (这里设置的是30分钟)
date={this.state.chooseDate} //默认的时间
onDateChange={this._onDateChange.bind(this)} //日期被修改时回调此函数
/>
</View>
</CustomActionSheet> : null
);
return (
<View style={styles.container}>
<TouchableHighlight
style={{backgroundColor:'cyan', padding:5}}
onPress={()=>this._showDatePicker()} //按钮: 点击触发方法
underlayColor='gray'
>
<Text >show DatePick</Text>
</TouchableHighlight>
{datePickerModal} //日期选择组件
</View>
);
}
}
const styles = StyleSheet.create({
container: {
flex: 1,
justifyContent: 'center',
alignItems: 'center',
backgroundColor: '#F5FCFF',
},
datePickerContainer: {
flex: 1,
borderRadius: 5,
justifyContent: 'center',
alignItems: 'center',
backgroundColor: 'white',
marginBottom: 10,
},
});
AppRegistry.registerComponent('Demo', () => Demo);
写好了,在terminal中运行:react-native run-ios 就能看到效果了
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# reactnative日期组件
# reactnative
# 日期选择
# react
# native日期选择
# React Native日期时间选择组件的示例代码
# 详解React Native开源时间日期选择器组件(react-native-datetime)
# React日期时间显示组件的封装方法
# 的是
# 三方
# 选择器
# 好了
# 就能
# 在此
# 这是一个
# 用了
# 弹出
# 可以直接
# 回调
# 值为
# 大家多多
# 先安装
# 目录下
# View
# TouchableHighlight
# Text
相关文章:
建站OpenVZ教程与优化策略:配置指南与性能提升
C++如何将C风格字符串(char*)转换为std::string?(代码示例)
建设网站制作价格,怎样建立自己的公司网站?
Android使用GridView实现日历的简单功能
上海制作企业网站有哪些,上海有哪些网站可以让企业免费发布招聘信息?
如何在IIS中新建站点并配置端口与IP地址?
昆明高端网站制作公司,昆明公租房申请网上登录入口?
建站之星24小时客服电话如何获取?
如何通过可视化优化提升建站效果?
黑客如何通过漏洞一步步攻陷网站服务器?
建站中国必看指南:CMS建站系统+手机网站搭建核心技巧解析
云南网站制作公司有哪些,云南最好的招聘网站是哪个?
如何解决ASP生成WAP建站中文乱码问题?
天河区网站制作公司,广州天河区如何办理身份证?需要什么资料有预约的网站吗?
视频网站app制作软件,有什么好的视频聊天网站或者软件?
整蛊网站制作软件,手机不停的收到各种网站的验证码短信,是手机病毒还是人为恶搞?有这种手机病毒吗?
海南网站制作公司有哪些,海口网是哪家的?
官网建站费用明细查询_企业建站套餐价格及收费标准指南
实现点击下箭头变上箭头来回切换的两种方法【推荐】
如何零基础开发自助建站系统?完整教程解析
个人摄影网站制作流程,摄影爱好者都去什么网站?
,怎么在广州志愿者网站注册?
西安专业网站制作公司有哪些,陕西省建行官方网站?
网站制作需要会哪些技术,建立一个网站要花费多少?
如何用IIS7快速搭建并优化网站站点?
已有域名能否直接搭建网站?
建站之星客服服务时间及联系方式如何?
免费制作海报的网站,哪位做平面的朋友告诉我用什么软件做海报比较好?ps还是cd还是ai这几个软件我都会些我是做网页的?
网站代码制作软件有哪些,如何生成自己网站的代码?
成都品牌网站制作公司,成都营业执照年报网上怎么办理?
如何在IIS7上新建站点并设置安全权限?
手机怎么制作网站教程步骤,手机怎么做自己的网页链接?
建站之星如何助力网站排名飙升?揭秘高效技巧
西安大型网站制作公司,西安招聘网站最好的是哪个?
小米网站链接制作教程,请问miui新增网页链接调用服务有什么用啊?
上海网站制作网页,上海本地的生活网站有哪些?最好包括生活的各个方面的?
无锡制作网站公司有哪些,无锡优八网络科技有限公司介绍?
枣阳网站制作,阳新火车站打的到仙岛湖多少钱?
,如何利用word制作宣传手册?
建站之星如何配置系统实现高效建站?
如何通过商城自助建站源码实现零基础高效建站?
猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?
javascript中的try catch异常捕获机制用法分析
已有域名建站全流程解析:网站搭建步骤与建站工具选择
北京建设网站制作公司,北京古代建筑博物馆预约官网?
定制建站价位费用解析与套餐推荐全攻略
c# 在高并发下使用反射发射(Reflection.Emit)的性能
制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?
南京做网站制作公司,南京哈发网络有限公司,公司怎么样,做网页美工DIV+CSS待遇怎么样?
陕西网站制作公司有哪些,陕西凌云电器有限公司官网?
*请认真填写需求信息,我们会在24小时内与您取得联系。