热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Android自定义水平日历控件

ZzHorizontalCalenderViewAhorizontalandscrollableCalenderView.Github地址:https:github.comzhou
ZzHorizontalCalenderView

A horizontal and scrollable CalenderView.

Github地址:https://github.com/zhouzhuo810/ZzHorizontalCalenderView

Gradle:

compile 'me.zhouzhuo.zzhorizontalcalenderview:zz-horizontal-calenderview:1.0.1'

Maven:


me.zhouzhuo.zzhorizontalcalenderview
zz-horizontal-calenderview
1.0.1
pom

效果图如下:

《Android自定义水平日历控件》 zzhorizontalcalenderview.gif

功能简介:

1.支持年、月、日、星期的文字颜色配置;
2.支持日的选中颜色配置;
3.支持年月对话框选择;
4.支持年和月点击回调;
5.支持年月日星期点击回调;
6.支持选中自动滑动到中间;
7.支持今天小圆点标注;
8.支持今天小圆点颜色配置;
9.所有配置均支持xml属性配置或java代码动态设置;
10.支出最小年份配置;

属性














属性说明:

属性名称属性作用属性类型
zhc_show_pick_dialog点击年或月是否弹出日期选择对话框boolean
zhc_unit_color年月单位的颜色color
zhc_min_year可选的最小年份integer
zhc_selection_color日的选中颜色color
zhc_press_shape_selector年或月或日点击效果选择器selector
zhc_year_text_color年的颜色color
zhc_month_text_color月的颜色color
zhc_week_text_color星期的颜色color
zhc_day_selected_text_color日选中时文字颜色color
zhc_day_unselected_text_color日未选中时文字颜色color
zhc_today_point_color今天的下表点的颜色color

用法简介:

① xml 代码

android:id="@+id/zz_horizontal_calender_view"
android:layout_
android:layout_
app:zhc_day_selected_text_color="@android:color/white"/>

②java 代码

final ZzHorizontalCalenderView view = (ZzHorizontalCalenderView) findViewById(R.id.zz_horizontal_calender_view);
//日点击监听
view.setOnDaySelectedListener(new ZzHorizontalCalenderView.OnDaySelectedListener() {
@Override
public void onSelected(boolean hasChanged, int year, int month, int day, int week) {
tvResult.setText("日期是否有变化:" + hasChanged + ",\n\n日期:" + year + "-" + month + "-" + day + ",\n\n星期:" + week);
}
});
//动态设置各种属性值:
view.setShowPickDialog(true);
view.setUnitColorResId(android.R.color.holo_green_dark);
view.setDayTextColorSelectedResId(android.R.color.holo_blue_bright);
view.setDayTextColorNormalResId(android.R.color.holo_red_dark);
view.setDaySelectionColorResId(android.R.color.holo_orange_dark);
view.setTodayPointColor(Color.YELLOW);
view.setMonthTextColor(Color.RED);
view.setYearTextColor(Color.BLUE);
//年月点击监听
view.setOnYearMonthClickListener(new ZzHorizontalCalenderView.OnYearMonthClickListener() {
@Override
public void onYearClick(int selectedYear, int selectedMonth) {
tvResult.setText("点击了年:("+selectedYear+","+selectedMonth+")");
}
@Override
public void onMonthClick(int selectedYear, int selectedMonth) {
tvResult.setText("点击了月 :("+selectedYear+","+selectedMonth+")");
}
});

玩安卓版王者荣耀的朋友,刷金币看这里
链接:http://pan.baidu.com/s/1gfKIeh9
辅助群:171977523

需要写安卓程序的小伙伴请关注我的淘宝店铺:
小周来帮您


推荐阅读
  • 使用 ListView 浏览安卓系统中的回收站文件 ... [详细]
  • 本文介绍了一种自定义的Android圆形进度条视图,支持在进度条上显示数字,并在圆心位置展示文字内容。通过自定义绘图和组件组合的方式实现,详细展示了自定义View的开发流程和关键技术点。示例代码和效果展示将在文章末尾提供。 ... [详细]
  • 在处理 XML 数据时,如果需要解析 `` 标签的内容,可以采用 Pull 解析方法。Pull 解析是一种高效的 XML 解析方式,适用于流式数据处理。具体实现中,可以通过 Java 的 `XmlPullParser` 或其他类似的库来逐步读取和解析 XML 文档中的 `` 元素。这样不仅能够提高解析效率,还能减少内存占用。本文将详细介绍如何使用 Pull 解析方法来提取 `` 标签的内容,并提供一个示例代码,帮助开发者快速解决问题。 ... [详细]
  • 实验九:使用SharedPreferences存储简单数据
    本实验旨在帮助学生理解和掌握使用SharedPreferences存储和读取简单数据的方法,包括程序参数和用户选项。 ... [详细]
  • 如何在Linux服务器上配置MySQL和Tomcat的开机自动启动
    在Linux服务器上部署Web项目时,通常需要确保MySQL和Tomcat服务能够随系统启动而自动运行。本文将详细介绍如何在Linux环境中配置MySQL和Tomcat的开机自启动,以确保服务的稳定性和可靠性。通过合理的配置,可以有效避免因服务未启动而导致的项目故障。 ... [详细]
  • 【问题】在Android开发中,当为EditText添加TextWatcher并实现onTextChanged方法时,会遇到一个问题:即使只对EditText进行一次修改(例如使用删除键删除一个字符),该方法也会被频繁触发。这不仅影响性能,还可能导致逻辑错误。本文将探讨这一问题的原因,并提供有效的解决方案,包括使用Handler或计时器来限制方法的调用频率,以及通过自定义TextWatcher来优化事件处理,从而提高应用的稳定性和用户体验。 ... [详细]
  • 本文介绍了在 Java 编程中遇到的一个常见错误:对象无法转换为 long 类型,并提供了详细的解决方案。 ... [详细]
  • Ihavetwomethodsofgeneratingmdistinctrandomnumbersintherange[0..n-1]我有两种方法在范围[0.n-1]中生 ... [详细]
  • 本文详细介绍了数据库并发控制的基本概念、重要性和具体实现方法。并发控制是确保多个事务在同时操作数据库时保持数据一致性的关键机制。文章涵盖了锁机制、多版本并发控制(MVCC)、乐观并发控制和悲观并发控制等内容。 ... [详细]
  • php更新数据库字段的函数是,php更新数据库字段的函数是 ... [详细]
  • 大类|电阻器_使用Requests、Etree、BeautifulSoup、Pandas和Path库进行数据抓取与处理 | 将指定区域内容保存为HTML和Excel格式
    大类|电阻器_使用Requests、Etree、BeautifulSoup、Pandas和Path库进行数据抓取与处理 | 将指定区域内容保存为HTML和Excel格式 ... [详细]
  • 在软件开发过程中,经常需要将多个项目或模块进行集成和调试,尤其是当项目依赖于第三方开源库(如Cordova、CocoaPods)时。本文介绍了如何在Xcode中高效地进行多项目联合调试,分享了一些实用的技巧和最佳实践,帮助开发者解决常见的调试难题,提高开发效率。 ... [详细]
  • 如何将TS文件转换为M3U8直播流:HLS与M3U8格式详解
    在视频传输领域,MP4虽然常见,但在直播场景中直接使用MP4格式存在诸多问题。例如,MP4文件的头部信息(如ftyp、moov)较大,导致初始加载时间较长,影响用户体验。相比之下,HLS(HTTP Live Streaming)协议及其M3U8格式更具优势。HLS通过将视频切分成多个小片段,并生成一个M3U8播放列表文件,实现低延迟和高稳定性。本文详细介绍了如何将TS文件转换为M3U8直播流,包括技术原理和具体操作步骤,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 在探讨如何在Android的TextView中实现多彩文字与多样化字体效果时,本文提供了一种不依赖HTML技术的解决方案。通过使用SpannableString和相关的Span类,开发者可以轻松地为文本添加丰富的样式和颜色,从而提升用户体验。文章详细介绍了实现过程中的关键步骤和技术细节,帮助开发者快速掌握这一技巧。 ... [详细]
  • 在 CentOS 7 系统中安装 Scrapy 时遇到了一些挑战。尽管 Scrapy 在 Ubuntu 上安装简便,但在 CentOS 7 上需要额外的配置和步骤。本文总结了常见问题及其解决方案,帮助用户顺利安装并使用 Scrapy 进行网络爬虫开发。 ... [详细]
author-avatar
毛云龙hei
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有