DateScroller自定义控件横向滑动日历选择器

最近用了两天的时间重写了n年前,我最开始工作所做的第二个自定义控件,现在看来要是原理没搞清楚,其实还是比较难的。当然,因为曾经工作的项目(已经不再运营),所以做了一点点改动,不完全跟原来项目需求一样。

先看看效果。


这个控件由三部分组成,最外层是LinearLayout,然后一条分割线,区分了左边和右边,右边可以横向滚动,在滚动的时候切换了月份,会popup出来相应的年月。

重点是右边滚动部分,我用的viewgroup来实现,基本构思如下:

1.计算item的大小,并且画出来。

2.添加滑动事件:向右滑动的左边边缘检测,在滑动期间判断是否快无数据时候生成更多的数据以便继续滑动。

3.根据滑动的位置判断滑动日期的月份是否发生变化并提示。

4.item的选中事件和回调。


有兴趣到这里看源码:https://github.com/arjinmc/DateScroller

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值