zoukankan      html  css  js  c++  java
  • [原创]自定义公历农历日期选择器

    公历农历日期选择器

    项目地址:https://github.com/Carbs0126/GregorianLunarCalendar

    android自带的DatePicker具有日期选择的功能,但是由于不同的rom可能会对此控件进行深度定制,且扩展性较差,因此如果我们在自己的程序中使用此控件,很可能会在不同的rom上显示不同的效果,这给用户带来了很不好的UI体验。
    为了规避上述弊端,我使用了三个NumberPicker组合的形式来显示日期。同时为了兼顾国内的日期使用习惯,我添加了农历选择功能。具体功能概述如下:
    1.公历年月日选择,年月改变时会联动改变相对应的月日时期显示,确保公历日期显示正确;
    2.农历年月日选择,同样会有联动改变对应日期的效果,确保日期符合农历历法,包括闰月、大小月等;
    3.公历农历互相转换时,实现无缝切换,如2016年2月29日切换为农历则显示二零一六年一月廿二日,农历转公历同样效果;
    4.显示范围为1901年-2100年,满足大部分使用需求;
    5.在1901年与2100年,确保公历农历转换时的边界限制。

    待完善之处:
    1.农历、公历转换时没有动画效果;
    2.内容上下滑动时没有添加渐变效果;
    3.使用NumberPickerUI可定制性较差;

    代码地址见:

    https://github.com/Carbs0126/GregorianLunarCalendar

    实际运行效果不卡顿,gif格式图片生成的有问题。

    打算继续将其优化,主要是放弃使用NumberPicker,而是采用纯粹的View,后续会继续更新。

  • 相关阅读:
    spring使用JdbcDaoSupport中封装的JdbcTemplate进行query
    javascript正则表达式
    Hi java新特性
    jdk 1.5
    jdk 1.6 & 1.7新特性
    core java 10~12(多线程 & I/O & Network网络编程)
    core java 8~9(GUI & AWT事件处理机制)
    core java 7 exception
    core java 5~6(OOP & 高级语言特征)
    响应式布局样例
  • 原文地址:https://www.cnblogs.com/carbs/p/5227969.html
Copyright © 2011-2022 走看看