android系统日期对话框只显示年月,android 只显示年月的日历
这是一篇不完整的文章 希望看到的读者 能够 跟我完善一下 !
这系统自带的日历 多多少少 会有弊端 !
手机版本不一样 操作不一样 所以我们在判断隐藏某一部分之前 还要判断api的版本
这是我要达成的效果图 .png
1.首先继承一下系统自带的日历dialog
public class YearPickerDialog extends DatePickerDialog {
public YearPickerDialog(Context context, OnDateSetListener callBack, int year, int monthOfYear, int dayOfMonth) {
super(context, callBack, year, monthOfYear, dayOfMonth);
}
@Override
public void onDateChanged(DatePicker view, int year, int month, int day) {
super.onDateChanged(view, year, month, day);
this.setTitle(year + "年" );
}
}
2.写一个遍历方法
private DatePicker findDatePicker(ViewGroup group) {
if (group != null) {
for (int i = 0, j = group.getChildCount(); i < j; i++) {
View child = group.getChildAt(i);
if (child instanceof DatePicker) {
return (DatePicker) child;
} else if (child instanceof ViewGroup) {
DatePicker result = findDatePicker((ViewGroup) child);
if (result != null)
return result;
}
}
}
return null;
}
3.调用
final Calendar calendar = Calendar.getInstance();
YearPickerDialog dialog= new YearPickerDialog(getActivity(), new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
calendar.set(Calendar.YEAR, year);
calendar.set(Calendar.MONTH, monthOfYear);
LogUtils.d(DateUtil.clanderTodatetime(calendar, "yyyy-MM"));
}
},calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DATE));
dialog.show();
DatePicker dp = findDatePicker((ViewGroup) dialog.getWindow().getDecorView());
if (dp != null) {
((ViewGroup)((ViewGroup) dp.getChildAt(0)).getChildAt(0)).getChildAt(1).setVisibility(View.GONE);
}
4.其中的DateUtil 类方法
public static String clanderTodatetime(Calendar calendar, String style) {
SimpleDateFormat formatter = new SimpleDateFormat(style);
return formatter.format(calendar.getTime());
}
android系统日期对话框只显示年月,android 只显示年月的日历相关推荐
- Android系统搜索对话框(浮动搜索框)的使用
http://www.ideasandroid.com/archives/310 Android系统搜索对话框(浮动搜索框)的使用 作者: ideasandroid 分类: android基础, an ...
- android系统功耗优化(2)---Android最佳实践之性能 - 电池续航时间优化
Android最佳实践之性能 - 电池续航时间优化 Doze和App Standby的优化(API23) 参考地址:http://developer.android.com/training/moni ...
- Android 系统(57)---深入理解Android输入系统
<深入理解Android 卷III>第五章 深入理解Android输入系统 <深入理解Android 卷III>即将发布,作者是张大伟.此书填补了深入理解Android Fra ...
- android系统nfc开发,GitHub - hanjie511/MyNFC: android的NFC开发入门
MyNFC android的NFC开发入门 NFC简述 近距离无线通信 (NFC) 是一组近距离无线技术,通常只有在距离不超过 4 厘米时才能启动连接.借助 NFC,您可以在 NFC 标签与 Andr ...
- Android系统自带主题样式(android:theme),Android Dialog 系统样式
部分转载:http://stephen830.iteye.com/blog/1129203 , http://blog.sina.com.cn/s/blog_3e333c4a0102vk0f.htm ...
- android系统手机流量控制方法amp;,基于Android的手机流量控制软件全解.doc
基于Android的手机流量控制软件全解 基于Android的手机流量控制软件 设计与实现 1 绪论 1.1 手机移动互联网进展 这些年,移动通信和互联网成为当今世界发展最快.市场潜力最大.前景最诱人 ...
- 手机android系统问题怎么解决方案,4解决Android系统崩溃问题的解决方案
第1部分:如何抢救Android系统崩溃的数据? 当您遇到Android系统崩溃时,在寻找解决方案以解决问题之前,请确保检索存储在设备上的所有数据和信息.这可能听起来很乏味,但确实是非常重要的一步. ...
- 修复 Android 系统问题的 9 款最佳 Android 手机维修软件和应用
您可能会对新的 Android 手机印象深刻,因为它令人兴奋的性能.然而,随着时间的推移,您可能会发现系统与过去不一样.您可能会遇到屏幕无响应. Android 应用程序崩溃.连接问题.电池耗尽等现象 ...
- iphone上安装android系统,如何在iPhone上安装Android操作系统?
关于"如何在iPhone上安装Android操作系统?"相关问题,库巴帮助小帮手为您解答. 本文是教各位如何安装谷歌的Android操作系统到iPhone上.事先警告,动手能力不强 ...
最新文章
- Python-装饰器-案例-获取文件列表
- JZOJ 5404. 【NOIP2017提高A组模拟10.10】Graph
- C语言入门之指针用法教程
- ubuntu下安装JDK和netbeans
- java session 详解
- [PATCH] UBUNTU: SAUCE: (no-up) apparmor: Sync to apparmor3 - RC1(v3.4.x kernel)
- C#_asp.net mvc 验证码功能的具体实现
- 根据银行卡账号获取所属银行php
- SVN—创建分支、合并分支到主干
- Windows命令行计算文件MD5
- 如何制作移动端静态网页
- 小知识:Windows XP优化全攻略(网吧型)
- arm开发板上电设置静态ip_Tiny4412友善之臂ARM开发板静态IP设置(重启有效)
- Altium-Designer6.9安装报错Application Error
- 冲击港交所:百果园书写水果连锁运营默示录
- 汇编语言实验八核心考点
- Mysql笔记之 数据类型
- 使用base64格式字符串播放音频
- SAP message TK 248 solved
- cmd下访问内部数据库
热门文章
- wireshark的简单介绍
- Underscore.js 入门教程
- 测试用例excel转word(Office word篇)
- 大众点评超实用爬虫系列4
- When Transfer Learning Meets Cross-City Urban Flow Prediction: Spatio-Temporal Adaptation Matters
- YOLOv4论文阅读笔记(一)
- Hystrix Turbine
- csgo手机上看demo_csgo看demo所有指令
- 2020 CCPC Wannafly Winter Camp Day6 M—自闭——模拟
- 基于sqlite数据库