使用的控件 DatePicker


默认的DatePicker

添加如下代码即可设置成滚动的选择日历

android:datePickerMode=”spinner”
android:calendarViewShown=”false”


初始化日历控件设置
调用初始化方法

public void init(int year, int monthOfYear, int dayOfMonth,
OnDateChangedListener onDateChangedListener)

参数内容分别对应年、月、日

注意:

我们设置不同语言的日历,年月日显示的顺序是不一样的
所以我们要判断语言(特别的只显示部分时间,例如只显示年、月或者只显示年份等)
我们创建一个实例对象mDatePicker

if ( mDatePicker != null) {if (getResources().getConfiguration().locale.getCountry().equals("CN")){((ViewGroup)((ViewGroup) mDatePicker.getChildAt(0)).getChildAt(0)).getChildAt(2).setVisibility(View.GONE);}else{((ViewGroup)((ViewGroup) mDatePicker.getChildAt(0)).getChildAt(0)).getChildAt(1).setVisibility(View.GONE);}}

上述代码是只显示年、月,去除日,对于语言是中文,我们隐藏最后一行的view 。 对于语言是英语我们隐藏中间的view。


以上就可以显示对应的日期了,同时我们系统默认的分割线是蓝色的,我们可以自定义分割线颜色。调用如下函数
,颜色修改R.color.green

private void setDatePickerDividerColor(DatePicker datePicker){// Divider changing:// 获取 mSpinnersLinearLayout llFirst = (LinearLayout) datePicker.getChildAt(0);// 获取 NumberPickerLinearLayout mSpinners = (LinearLayout) llFirst.getChildAt(0);for (int i = 0; i < mSpinners.getChildCount(); i++) {NumberPicker picker = (NumberPicker) mSpinners.getChildAt(i);Field[] pickerFields = NumberPicker.class.getDeclaredFields();for (Field pf : pickerFields) {if (pf.getName().equals("mSelectionDivider")) {pf.setAccessible(true);try {pf.set(picker, new ColorDrawable(this.getResources().getColor(R.color.green)));} catch (IllegalArgumentException e) {e.printStackTrace();} catch (Resources.NotFoundException e) {e.printStackTrace();} catch (IllegalAccessException e) {e.printStackTrace();}break;}}}}

android日历之滚动选择日期类似ios相关推荐

  1. uniapp 日期选择器_uniapp实现横向滚动选择日期

    本文实例为大家分享了uniapp实现横向滚动选择日期的具体代码,供大家参考,具体内容如下 1.方法封装 common.js //获取当前时间,格式YYYY-MM-DD HH:MM:SS const G ...

  2. android日历控件之显示当前月份,Android 日历方式显示的日期选择组件(日历控件之一).doc...

    运行结果: 此Widget组件只包含五个类文件: DateWidget DateWidgetDayCell DateWidgetDayHeader DayStyle SymbolButton *红色为 ...

  3. Android 自定义控件 按钮滚动选择

    效果图 代码实现 package com.demo.ui.view;import android.annotation.TargetApi; import android.content.Contex ...

  4. android 随意漂浮动画,Android实现气泡漂浮动画,类似IOS Game Center中气泡动画

    网上没找到,于是自己写了一个,简单的算法,利用 PropertyValuesHolder实现多个动画的集合,不多说,直接上代码吧,非常好理解: /** * 气泡漂浮动画 * @param view * ...

  5. android 仿携程选择城市,类似携程商旅的城市选择器 CityPicker

    软件介绍 CityPicker 这是一个类似于携程商旅类型的城市选择器 特性 1.无侵入性 2.使用方便 展示 使用方法 1.将工程中CityPicker中的Citypicker文件夹拖入你要使用的工 ...

  6. Android选择日期

    一:布局文件 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:and ...

  7. Android日历移植小结

    最近的小项目中要使用日历控件选择日期,折腾了好久,几次尝试加入别人写的成品,但问题很多.一方面因为自己初学Android,对其机制不够了解,另一方面因为自己太懒,看不进别人的代码,不想做太大的改动,调 ...

  8. Android自定义日期区间选择,类似12306酒店入住的日期选择

    时间过的好快,一转眼2019年马上就结束了,在年末最后一天,写一篇与时间有关的文章吧,今天做一个日期区间的选择功能,效果类似一些酒店入住的日期选择,我写的这个类似12306上面的酒店入住日期选择效果, ...

  9. Android 类似Ios的时间滚轮控件

    之前项目使用的,参考了别人的一个demo,但是原文链接找不到了.... 先说如何使用: //参数1:上下文 //参数2:选中是的ResultHandler回调 //参数3:选择器最早时间 //参数4: ...

最新文章

  1. php程序监控指标,通达信主力动向监控副图指标公式
  2. 深度学习笔记:LSTM
  3. java字符串学习_java之字符串学习记录
  4. HDU 2859 Phalanx(二维DP)
  5. python plt.plot bar 设置绘图尺寸大小
  6. 第三章 正态性检验、自相关检验与异方差性检验
  7. 【数学建模】通过调整飞行角度使飞机顺利飞行(Matlab)
  8. 深度学习之TensorFlow
  9. 解决了asp.net 关于服务器版本不正确的问题
  10. 处理整个磁盘镜像文件的单个分区
  11. 中国三大石油公司信息化进展
  12. Ubuntu系统截图方法
  13. 批量添加搜狗域名绑站工具
  14. Java使文本框失去焦点的方法,使文本框失去焦点的事件是()A.ChangeB.FocusC.SetFocusD.LostFocus...
  15. Android8.1 framework 微信付款码显示不出来
  16. 【漫画科普】什么是PAM4
  17. 简单的爬取某租房网站租房信息并存入MySQL数据库
  18. 这5款堪称神器的插件,能让你的效率提升3-4倍!还不知有点遗憾
  19. 代理自动配置文件PAC的使用方法
  20. 6行代码实现对TF卡的读写功能

热门文章

  1. 数字转货币金钱中文大写
  2. XV6实验-Lab0 Utilities
  3. 【CSS 弹性盒子布局 (Flexible Box Layout)】
  4. 图的邻接表储存方法和基本运算算法
  5. HTML <meta> 元素
  6. 首信进军电子商务领域
  7. Visio日程安排图
  8. 计算机网络fsk是什么意思,一文读懂LoRa与FSK的共性与区别-通信/网络-与非网
  9. 人工智能发展史-从图灵测试到大数据
  10. 贪心算法的全部讲解(贪心选择性和贪心子结构)