Android开发之DatePicker和TimePicker实现选择日期时间功能示例
本文实例讲述了android开发之datepicker和timepicker实现选择日期时间功能。分享给大家供大家参考,具体如下:
datepicker常用属性:
1. calendarviewshown 设置其是否显示calenderview组件
2. endyear 允许选择的最后一年
3. maxdate 支持的最大日期
4. mindate 允许选择的最小日期
5. spinnershown 是否显示spinner 日期选择组件
6. startyear 设置日期选择器 允许选择的第一年
实际效果:
实例的布局文件由 datepicker 和timepicker 组成
<?xml version="1.0" encoding="utf-8" ?> <linearlayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center_horizontal" android:orientation="vertical"> <textview android:text="please choose your birthday :" android:gravity="center" android:padding="5dp" android:layout_width="match_parent" android:layout_height="wrap_content" android:textsize="20dp" android:typeface="monospace"/> <!--定义一个datepicker控件--> <datepicker android:id="@+id/datepicker" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:startyear="1900" android:endyear="2080" android:calendarviewshown="true" android:spinnersshown="true"> </datepicker> <!--timepicker组件--> <timepicker android:id="@+id/timepicker" android:layout_width="wrap_content" android:layout_height="100dp" android:layout_gravity="center_horizontal"> </timepicker> <!--显示用户选择的日期--> <textview android:id="@+id/show" android:layout_width="match_parent" android:layout_height="wrap_content" android:cursorvisible="false"/> </linearlayout>
布局文件中包含了datepicker 和 timepicker 用户可以自足的选择时间和日期
选择的具体结果 会在textview上显示
datepicker.init()
timepicker.setontimechangedlistener()
这里给出实现该功能的代码:
public class mainactivity extends activity { //定义五个当前时间的变量 private int year ; private int month ; private int day ; private int hour ; private int minute ; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); datepicker datepicker = (datepicker) findviewbyid(r.id.datepicker); timepicker timepicker = (timepicker) findviewbyid(r.id.timepicker); //获取当前日期/时间 calendar calendar = calendar.getinstance(); year = calendar.get(calendar.year); month = calendar.get(calendar.month); day = calendar.get(calendar.day_of_month); hour = calendar.get(calendar.hour); minute = calendar.get(calendar.minute); //为datepicker添加监听事件 datepicker.init(year, month, day, new datepicker.ondatechangedlistener() { @override public void ondatechanged(datepicker view, int year, int monthofyear, int dayofmonth) { mainactivity.this.year = year; mainactivity.this.month =month ; mainactivity.this.day = day; //显示用户选择的 日期 和 时间 showdate(year,month,day,hour,minute); } }); //timepicker选择监听器 timepicker.setontimechangedlistener(new timepicker.ontimechangedlistener() { @override public void ontimechanged(timepicker view, int hourofday, int minute) { mainactivity.this.hour = hourofday; mainactivity.this.minute = minute; } }); } private void showdate(int year ,int month , int day , int hour , int minute ){ textview textview = (textview) findviewbyid(r.id.show); textview.settext("您选择的生日为:" + year+"年 " + month+"月 " + day+"日 " + hour +"时 " + minute +"分"); } }
参考自疯狂android讲义
更多关于android相关内容感兴趣的读者可查看本站专题:《android开发入门与进阶教程》、《android调试技巧与常见问题解决方法汇总》、《android基本组件用法总结》、《android视图view技巧总结》、《android布局layout技巧总结》及《android控件用法总结》
希望本文所述对大家android程序设计有所帮助。
上一篇: Flutter中网络图片加载和缓存的实现
下一篇: Android开发之图片压缩实现方法分析