重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
1.DatePicker
10年积累的网站制作、成都网站建设经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先制作网站后付款的网站建设流程,更有封丘免费网站建设让你可以放心的选择与我们合作。
在Android中,DatePicker用来实现日期输入设置,日期的设置范围为1900年1月1日至2100年12月31日。
1.1常用xml属性
DatePicker的常用xml属性如图1所示:
图1 DatePicker常用xml属性
其中,android:calendarViewShown[boolean]用于设置是否显示calendar view;android:endYear[int]用于设置截至日期;android:maxDate[int]用于设置最大的日期;android:minDate[int]用于设置最小的日期;android:spinnersShown[boolean]用于设置是否显示spinners;android:startYear[int]用于设置起始日期。
1.2常用方法
DatePicker的常用方法有以下一些:
(1)public CalendarView getCalendarView(); //获取CalendarView
(2)public boolean getCalendarViewShown(); //获取CalendarView是否显示
(3)public int getDayOfMonth(); //获取当前日期的日
(4)public long getMaxDate(); //获取最大日期
(5)public long getMinDate(); //获取最小日期
(6)public int getMonth(); //获取当前日期的月
(7)public boolean getSpinnersShown(); //获取Spinners是否显示
(8)public int getYear(); //获取当前日期的年
(9)public void init(int year,int monthOfYear,int dayOfMonth,
DatePicker.OnDateChangedListener onDateChangedListener); //初始化日期
(10)public void setCalendarViewShown(boolean shown);//设置是否显示CalendarView
(11)public void setMaxDate(long maxDate); //设置最大日期
(12)public void setMinDate(long minDate); //设置最小日期
(13)public void setSpinnersShown(boolean shown); //设置是否显示Spinners
(14)public void updateDate(int year,int month,int dayOfMonth); //更新当前日期
2.TimePicker
在Android中,TimePicker用来实现时间输入设置,可以选择12或24小时模式。TimePicker的常用方法有以下一些:
(1)public Integer getCurrentHour(); //获取当前时间的小时
(2)public Integer getCurrentMinute(); //获取当前时间的分钟
(3)public boolean is24HourView(); //获取是否为24小时模式
(4)public void setCurrentHour(Integer currentHour); //设置当前时间的小时
(5)public void setCurrentMinute(Integer currentMinute); //设置当前时间的分钟
(6)public void setIs24HourView(Boolean is24HourView); //设置24小时模式
3.DatePickerDialog
在Android中,DatePickerDialog用来显示日期对话框。DatePickerDialog的常用方法有以下一些:
(1)public DatePicker getDatePicker(); //获取DatePicker中的日期值
(2)public void onClick(DialogInterface dialog,int which); //响应对话框中的点击事件
(3)public void onDateChanged(DatePicker view,int year,int month,int day); //响应日期改变事件
(4)public void updateDate(int year,int monthOfYear,int dayOfMonth); //更新当前日期
4.TimePickerDialog
在Android中,TimePickerDialog用来显示时间对话框。TimePickerDialog的常用方法有以下一些:
(1)public void onClick(DialogInterface dialog,int which); //响应对话框中的点击事件
(2)public void onTimeChanged(TimePicker view,int hourOfDay,int minute); //响应时间改变事件
(3)public void updateTime(int hourOfDay,int minuteOfHour); //更新当前时间
5.AnalogClock
在Android中,AnalogClock用于显示指针式时钟,该时钟仅有时钟和分钟两个指针。
6.DigitalClock
在Android中,DigitalClock用来显示数字式时钟,显示格式为HH:MM:SS AM/PM。
【问题一】 卡顿问题
有人打开CalendarView会发生卡顿现象,不过这个问题也有人找到解决方案。如下:
解决Android CalendarView显示卡顿的问题
【问题二】 获取不到日期问题
在某些手机上,会发生获取不到日期的问题,这个问题是非常严重的,因为系统兼容问题导致,这个问题目前没有解决方案
【问题三】 样式不一致问题
CalendarView的样式受到系统的影响,在不同的手机上可能样式不一样。
比如,在布局文件中写一个最简单的CalendarView布局
但是,在手机上的样式是这样的:
总之,一般项目中使用日历控件都会将原生控件CalendarView排除在外。
[本章完...]
一、关于时间的控件分为两种:日期时间控件 和 日历控件。
日期时间控件: 当选择的时间包含时分时会采用的控件 。一般点击后,我见过的交互有两种方式,一种是在底部弹出选择框,通过滚动的形式可选择年、月、日、时、分,点击完成按钮关闭弹窗。另一种是在点击处下方直接显示,选择的形式同底部弹出选择一样,选择完成后,点击开始的点击处,隐藏选择框。
日历控件 :当选择的时间仅仅为日期的时候会选择的控件。我见过的日历控件分为可折叠和不可折叠两种。不可折叠的日历控件都是按月份展示,通过左右滑动,可切换月份。可折叠的日历控件在上滑时会收起,折叠成周历,左右滑动可切换周。两种控件也可结合使用,如图:
二、地点控件,交互上我分为了页面选择控件和底部弹框控件。
页面选择交互 :当选择的地点,包括历史访问地点、热门城市等,辅助功能时,可采用这种交互控件。优点:可搜索/索引查找,辅助功能可以多些。缺点:需要页面跳转。
底部弹窗交互 :是一种轻松便捷的选择地点的方式,目前也有产品把热门城市选择容进来了,不过如果辅助功能较多,还是觉得选择用页面选择更好。优点:占地小。缺点:当选择的城市区域过多的时候,选择麻烦。所以在功能相对不那么频繁用到的时候,可选择此控件。
三、人员选择控件:根据有组织层级的人员选择还是无组织层级人员选择,有两种交互设计方式,无组织层级的人员选择,搜索框+人员列表即可。有组织层级的人员选择,可通过单页面组织分类,平铺显示人员,也可以通过页面层层下钻的形式,选择人员。
以上就是我个人的一些总结,如有不妥之处,不吝赐教。
- E N D -