Android控件之CalendarView 日历对话框

在Android 3.0中新增的日历视图控件可以显示网格状的日历内容,android.widget.CalendarView是从android.widget.FrameLayout中继承。

CalendarView 类提供了基本的日历设置方法,

long getDate() 获取从1970年,1月1日,0点0分0秒到现在的毫秒数,因为返回是long型最终只能截止到2038年

int getFirstDayOfWeek() //获取当天是本周的第几天,Android123提示返回的定义在java.util.Calendar类中,比如Calendar.Monday为星期一,定义值为2。

long getMaxDate() //获取CalendarView支持1970年到那天的最大天数

long getMinDate() //获取CalendarView支持1970年到那天的最小天数

boolean getShowWeekNumber() //获取是否显示星期号

boolean isEnabled() //是否显示本日历视图

public void setDate (long date, boolean animate, boolean center) //设置选择日期到1970年的描述

void setDate(long date) //设置选择的日期描述到1970年

void setEnabled(boolean enabled) //设置是否启用视图

void setFirstDayOfWeek(int firstDayOfWeek) //设置本周起始天数

void setMaxDate(long maxDate)

void setMinDate(long minDate)

代码如下:

package com.example.test;

import java.text.SimpleDateFormat;

import org.holoeverywhere.widget.CalendarView;
import org.holoeverywhere.widget.CalendarView.OnDateChangeListener;

import android.app.Activity;
import android.os.Bundle;

public class DateActivity extends Activity {

	CalendarView calendar;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		setContentView(R.layout.date);
		calendar = (CalendarView) findViewById(R.id.calendar);
		Long nowTime = calendar.getDate();
		SimpleDateFormat f = new SimpleDateFormat("yyyy年MM月dd日hh:mm:ss");
		String time = f.format(nowTime);
		System.out.println("-------------" + time);
		calendar.setOnDateChangeListener(new OnDateChangeListener() {

			@Override
			public void onSelectedDayChange(CalendarView arg0, int arg1,
					int arg2, int arg3) {
				arg2 = arg2 + 1;
				System.out.println("-------------" + arg1 + "-" + arg2 + "-"
						+ arg3);
			}
		});

	}

}
显示结果:


  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: calendarview控件Android中自带的一个日历控件,可以展示日历的月份、日期等信息。美柚App是一款备孕怀孕期的助手应用,其中的孕期日历是非常重要的功能之一。通过对比美柚App孕期日历calendarview控件的属性,可以轻松地仿制出类似的孕期日历功能。 首先,需要修改calendarview控件的样式和颜色,使其更接近美柚App的设计风格。可以通过修改控件的属性和调整资源文件中的样式来实现。 其次,需要添加日期的标注和提示信息,例如月经期、排卵期、预计分娩日期等。该功能可以通过在calendarview中设置特定日期的标记和点击事件来实现。 最后,需要实现在孕期日历中显示当天是否受孕、孕周数、宝宝大小等信息。这需要在代码中进行计算,根据用户输入的信息和当前时间来动态展示相应的信息。可以通过创建一个类来处理计算和展示相关信息的逻辑,并将其与calendarview控件关联起来。 综上所述,仿制美柚App的孕期日历需要对calendarview控件的样式、功能和计算逻辑进行修改和扩展。通过合理地利用已有的控件和资源,可以轻松地实现一个类似的应用。 ### 回答2: calendarview控件Android开发中常用的日历选择控件,它可以以日历的形式展示日期,并允许用户通过手势或点击选择日期,常见的属性包括日期的显示格式、日期的范围、当前选中日期等。在美柚app中,有一个孕期日历模块,用户可以通过这个模块记录自己的孕期信息,包括日期、孕周、体重、胎动等,通过分析这些信息,可以为用户提供个性化的孕期建议和咨询服务。 在实现类似美柚app孕期日历的功能时,我们可以使用calendarview控件来展示日期,并通过自定义布局和样式来实现不同的日期显示效果。比如,为了突出当前选中日期,我们可以通过设置选中日期的背景色或添加高亮边框来实现。为了支持选择日期范围,我们可以通过设置日期的最小值和最大值来限制用户选择的日期。同时,为了展示孕周和其他信息,我们可以自定义日期的布局,将孕周等信息与日期一起展示,从而更方便用户使用和理解。 除了上述基本的属性和布局方案,我们还可以通过添加动画效果、支持多语言等方式优化用户体验,从而让我们的控件更加实用和易用。总之,calendarview控件在实现类似美柚app孕期日历的功能时,具有很大的优势和灵活性,在开发中需要根据实际需求进行具体的调整和优化,以达到最佳的用户体验和效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序猿老王

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值