自定义时间选择器(更改分割线和距离)

本文介绍如何深入理解DatePicker源码布局,通过调整NumberPicker宽度实现自定义显示,并展示如何在基础设置上进行扩展,以创建一个CustomDatePicker。
摘要由CSDN通过智能技术生成

一、首先了解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 {
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值