Android凝碧剑之CalendarView之万年历

Android万年历应用开发:2015新技术集成 Java 8引入了一套全新的日期时间API,提供了更强大和灵活的日期时间处理能力。新的java.time包中引入了LocalDate、LocalTime和LocalDateTime等类,它们是不可变且线程安全的。 阅读详情

传送门 ☞ 轮子的专栏 ☞ 转载请注明 ☞ http://blog.youkuaiyun.com/leverage_1229


凝碧剑

        张召重一挺凝碧剑,纵到陈家洛身前,说道:“你年纪轻轻,居然有这身功夫,你师父是谁?”。。。周绮拿了凝碧剑细看,找了几柄纯钢旧刀剑,一剑削下,应手而断,果然锐利无匹。徐天宏在一旁微笑注视。

        今天我们学习如何利用Android平台“凝碧剑”CalendarView实现万年历的效果。日历视图控件是在3.0Honeycomb之后引入的,可以显示网格状的日历内容。那么对于3.0Honeycomb之前的版本,如果需要使用日历控件只能借助于第三方。CalendarView使用起来非常方便,基本就是拿来即用。下面我们给出该情景的案例:

一、案例技术要点

1.构建一个CalendarView视图类用于在当前Activity上显示万年历。

2.为CalendarView对象设置日期监听OnDateChangeListener,并复写回调方法onSelectedDayChange()。

二、案例代码陈列

工程包目录


AndroidManifest.xml

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="cn.lynn.calendarview"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="11"
        android:targetSdkVersion="15" />

    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
        <activity
            android:name=".CalendarViewMainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>
strings.xml
<resources>

    <string name="app_name">Android万年历CalendarView</string>

</resources>
main.xml
<?xml version="1.0" encoding="utf-8" ?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <CalendarView
        android:id="@+id/calendarView"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

</LinearLayout>
CalendarViewMainActivity.java
package cn.lynn.calendarview;

import android.app.Activity;
import android.os.Bundle;
import android.widget.CalendarView;
import android.widget.CalendarView.OnDateChangeListener;
import android.widget.Toast;

public class CalendarViewMainActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        CalendarView calendarView = (CalendarView) findViewById(R.id.calendarView);
        calendarView.setOnDateChangeListener(new OnDateChangeListener() {
            @Override
            public void onSelectedDayChange(CalendarView view, int year, int month, int dayOfMonth) {
                String date = year + "年" + month + "月" + dayOfMonth +"日";
                Toast.makeText(CalendarViewMainActivity.this, date, Toast.LENGTH_LONG).show();
            }
        });
    }
}
三、案例效果展示

 
Android万年历应用源码分析与实践 Android系统基于Linux内核,采用分层的架构设计,从下至上分为Linux内核层、硬件抽象层(HAL)、系统运行库、应用框架层和应用层。其中,应用层是我们最为熟知的部分,提供了丰富的API接口供开发者使用。在Android应用开发中,布局管理器是用于控制用户界面中组件(View)位置和大小的组件。以下是几种常用的布局类型,以及它们的基本介绍:线性布局(LinearLayout):按水平或垂直方向堆叠子视图。相对布局(RelativeLayout) 阅读详情

相关推荐

CalendarView

该CalendarView只有一个java文件,复制到项目中即可使用

安卓自定义万年历CalendarView的用法

//安卓自定义万年历CalendarView的用法,点击可以获取日期 public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentVi

大城小小爱的博客 4056

android万年历(两种方法显示农历)

android万年历源码,两种方式显示农历信息。

android万年历编程,Android 日历、Android 农历日历 Android 日历节假日

【实例简介】昨天实现了一个日历控件,主要包含公历和农历的展示,今天将其完成全部功能,主要包含节假日的展示、二十四节气展示。支持手势滑动显示下一个月.如有实现不合理的地方希望大家提供宝贵的意见。【实例截图】【核心代码】日历完整(公历、农历、节假日、节气)└── Calendar├── AndroidManifest.xml├── bin│ ├── Calendar.apk│ ├── Cale...

weixin_39598568的博客 1012

Android万年历设计

有关Android中的日历。万年历的源代码以及相应的截图。

android简易万年历源码

带有农历日期,节假日与二十四节气的标注,不含日程,修改下界面就可直接使用

万年历日程提醒c语言,Android 日历 万年历 源代码(支持日程提醒)

[android]代码库package com.pwp.activity;import java.text.SimpleDateFormat;import java.util.ArrayList;import java.util.Calendar;import java.util.Date;import com.pwp.calendar.LunarCalendar;import com.pwp.c...

weixin_33851180的博客 978

万年历(完美终结版)

自制万年历,完美+完整资料,不可多得哦。大家尽情分享下载吧

Android Widget日历 完整示例分析

第六部分 Widget日历 本例实现了Widget日历,用来显示当前的日期,时间等信息。要学习开发Widget开发,需要了解AppWidget的框架结构。基于该框架,开发者可以在Ophone及模拟器上开发"外形" 类似传统的Widget小应用程序,并将其嵌入到其他应用中。 注意:Widget设计好UI后根据需要来完成更新,如果程序不需要使用定时来更新AppWidget,则最好不要使用定时更新...

yuanlanjun 391

android:中华万年历

中华万年历 安卓使用 java编译,简易万年历带有部分附加功能能

Calendar(带备忘录和农历功能)

Calendar(带备忘录和农历功能),一个用户java swing编写的日历。页面漂亮!并有打包程序和源码

高效实现Android日历功能 (带农历日期、节气)

关于带农历节气的日历

qq_65679572的博客 2484

Python 逆向解析知乎盐选反爬字体,实现内容精准还原

本文详细解析了知乎盐选内容的反爬字体机制,并提供了使用Python逆向解析WOFF字体文件的完整方案。通过fontTools库构建解码字典,实现乱码文本的精准还原,帮助开发者应对动态字体策略,同时强调法律与道德风险。

weixin_29268385的博客 1298

学习Android的第十四天

在Android中,CalendarView.OnDateChangeListener接口定义了一个回调方法onSelectedDayChange(),该方法在用户改变CalendarView选择的日期时被调用。在Android中,TimePicker.OnTimeChangedListener接口定义了一个回调方法onTimeChanged(),该方法在用户改变TimePicker的时间时被调用。在Android中,DatePicker是一个用户界面组件,用于允许用户选择日期。

m0_74293254的博客 1816

工业质检实战:用海康VisionMaster的BLOB分析搞定PCB焊点缺陷检测

本文详细介绍了如何利用海康VisionMaster平台的BLOB分析技术,构建一套针对PCB焊点缺陷的自动化视觉检测方案。文章从核心原理出发,重点阐述了如何通过动态阈值分割和模板匹配定位,克服工业现场光照不均、位置偏移等挑战,实现虚焊、漏焊等缺陷的精准、稳定检测,并提供了实战调优与系统集成的关键思路。

weixin_29091105的博客 563

IGV实战指南:从数据导入到Peak可视化的全流程解析

本文提供了一份IGV实战指南,详细解析了从数据导入到Peak可视化的全流程。内容包括软件安装、参考基因组加载、测序数据处理、信号调整以及如何精准定位和可视化Peak区域,并分享了导出出版级矢量图的高级技巧,帮助用户高效完成基因组数据可视化分析。

weixin_29212867的博客 149

Android根据Calendar View获取具体的年,月,日

首先把一个Calendar对象设置为对象的属性或者类属性(提供外部访问) Calendar c = Calendar.getInstance(); 然后是获取日期的部分 //显示你的生日 final CalendarView calendar = (CalendarView)findViewById(R.id.calendarView); calendar.setOnDateChangeListener(new CalendarView.OnDateChangeLis

qq_44299157的博客 1537

海康摄像头RTSP流延迟优化实战:从VLC到OpenCV的5种方案对比与性能调优

本文针对海康摄像头RTSP流的高延迟问题,深入剖析了延迟根源,并系统对比了从VLC、OpenCV到海康官方SDK、FFmpeg及硬件加速等五种主流方案的性能表现。重点分享了缓冲区设置、协议优化、多线程架构与硬件解码等实战调优技巧,旨在帮助开发者将视频流延迟从秒级优化至毫秒级,满足工业检测、安防监控等高实时性场景需求。

hh234的博客 808

万年历开源 android,简单干净的万年历

本项目目前已开源,项目地址:https://github.com/mainh/MainCalendar首先感谢在网络上的开源达人,没有你们我是不会做出这款APP的,如果喜欢本APP的人数较多我也想开源,不过这款APP的这点功能真不知道有没有开源的必要。。。网上流行的万年历应用不是太过强大而过于臃肿就是功能太过简单,总之没有符合心意的应用,那就自己写一个吧,经过不知多少天的业余时间编写测试,目前使用...

weixin_34556619的博客 1266

PySWMM新手避坑指南:从安装到批量处理INP文件的完整流程(附常见错误解决方案)

本文为PySWMM新手提供从环境搭建到批量处理INP文件的完整避坑指南。详细讲解了虚拟环境配置、库安装方法,并针对“无法打开输入文件”和对象访问错误等高频问题提供解决方案。核心部分展示了如何利用Python脚本实现INP文件的批量运行、结果汇总以及参数自动化修改,显著提升SWMM模型的工作效率。

weixin_29092031的博客 393

YOLOv11 改进 - 特征融合 | 替换 C3k2 涨点:GELAN 融合 CSP+ELAN 提精度

本文介绍了可编程梯度信息(PGI)和广义高效层聚合网络(GELAN)与 YOLOv11 的结合,以解决深度网络数据传输时的信息丢失问题。PGI 能为目标任务提供完整输入信息,计算目标函数以更新网络权重。GELAN 作为轻量级网络架构,由 SPPELAN、ELAN1、RepNCSPELAN4 等模块组成。我们将 GELAN 代码集成进 YOLOv11, 实验脚本显示,结合 GELAN 的 YOLOv11 在 MS COCO 数据集目标检测任务中或有良好表现。

魔改工程师的博客 1243

Android 第二十二章 CalendarView

CalendarView 日历简单实用介绍

weixin_43969550的博客 927

YOLOv12改进策略【独家融合改进】| SPD-Conv+PPA 再次提升模型针对小目标的特征提取能力

SPD-Conv是一种新的 CNN 构建模块,用于替代传统 CNN 架构中使用的步长卷积(strided convolution)和池化(pooling)层,它由空间到深度(Space-to-depth,SPD)层和非步长卷积(non - strided convolution)层组成。

Limiiiing的博客 1029

jsp软件公司员工管理系统

jsp软件-公司员工管理系统本系统带程序说明书   有需要的可以去我上传的资源里面找,找不到的话,评论我,或者站内私信留下邮箱,我看到机会给你发,也可以主动联系我博客名。因为最近太忙一直没有上传完。emmmm...

qq_820629211的博客 3535

openharmony之启动恢复子系统详解

需求: 添加一个名为my_service的自定义服务步骤1: 创建服务配置],],"env": [步骤2: 添加到主配置],"jobs": ["cmds": [步骤3: 验证配置# ✅ 检查配置格式 jq . /system/etc/init/my_service.cfg # 🔄 重新加载配置 begetctl reload # 📊 验证服务状态 begetctl dump_service my_serviceOpenHarmony init进程的完整生命周期。🔄 三阶段启动模型⚙️ 配置体系。

m0_67505153的博客 602

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

上一篇: GoF23种设计模式之行为型模式之策略模式
下一篇: Android白虹剑之EditView之非法输入
innovation
博客等级 码龄14年 251粉丝 136原创
评论 6
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值