一、首先了解DatePicker源码的布局
年、月、日 是由3个numberPicker组成 通过发射获取到NumberPicker 如果不想显示天数 ,重新布局
lps.width = (ScreenUtils.getScreenWidth(context)- DensityUtil.dip2px(context,20))/count;
按权重划分在调用的activity里把日隐藏
((ViewGroup)((ViewGroup) datepicker.getChildAt(0)).getChildAt(0)).getChildAt(2).setVisibility(View.GONE);
二、对DatePicker的基础设置
/** * 设置时间的最大值 */ Date date = new Date(); datepicker.setMaxDate(date.getTime()); datepicker.setDate(start_date); /** * 设置最小日期 */ SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); long min_long = 0; try { min_long=sdf.parse("2018-07-01 00:00:00").getTime(); } catch (ParseException e) { e.printStackTrace(); } datepicker.setDividerColor(0xffdddddd); datepicker.setPickerMargin(0,3); datepicker.setMinDate(min_long);
三 自定义View 定义一个CustomDatePicker xml中引用
public class CustomDatePicker extends DatePicker {