如何在android日历视图中显示特定月份?

如何在android日历视图中显示特定月份?,android,android-calendar,calendarview,Android,Android Calendar,Calendarview,我想使用android CalendarView向用户显示特定月份。请帮助我实现此功能。我写了以下代码,但它不起作用 CalendarView calendarView = (CalendarView) findViewById(R.id.calendarView); Calendar calendar1 = Calendar.getInstance(); calendar1.set(2016, 6, 1); Calendar calendar2 = Calenda

我想使用android CalendarView向用户显示特定月份。请帮助我实现此功能。我写了以下代码,但它不起作用

  CalendarView calendarView = (CalendarView) findViewById(R.id.calendarView);
    Calendar calendar1 = Calendar.getInstance();
    calendar1.set(2016, 6, 1);

    Calendar calendar2 = Calendar.getInstance();
    calendar2.set(2016, 6, 30);

    calendarView.setMinDate(calendar1.DATE);
    calendarView.setMaxDate(calendar2.DATE);
当我尝试使用上述代码运行应用程序时,将出现以下输出


提示:的值是多少?文档上说是5,所以当你调用这个方法时,你说的是“1970年1月1日后5毫秒。”

在getDefault()时区中设置自1970年1月1日00:00:00以来此日历视图支持的最小日期(毫秒)

基本上,这是一个静态字段,可能不是您想要的值

也许您需要返回日期设置值的
long

calendarView.setMinDate(calendar1.getTimeInMillis());
calendarView.setMaxDate(calendar2.getTimeInMillis());

提示:的价值是什么?文档上说是5,所以当你调用这个方法时,你说的是“1970年1月1日后5毫秒。”

在getDefault()时区中设置自1970年1月1日00:00:00以来此日历视图支持的最小日期(毫秒)

基本上,这是一个静态字段,可能不是您想要的值

也许您需要返回日期设置值的
long

calendarView.setMinDate(calendar1.getTimeInMillis());
calendarView.setMaxDate(calendar2.getTimeInMillis());

根据我的经验,我总是使用日历。set(Calendar.YEAR,YEAR)方法设置年份和日历。set(Calendar.MONTH,MONTH)方法设置月份和日历。set(Calendar.DAY,DAY)方法设置日期。所以我建议你也这么做

    String date = "1/6/2016";
    String parts[] = date.split("/");
    int day = Integer.parseInt(parts[0]);
    int month = Integer.parseInt(parts[1]);
    int year = Integer.parseInt(parts[2]);

    Calendar calendar = Calendar.getInstance();
    calendar.set(Calendar.YEAR, year);
    calendar.set(Calendar.MONTH, month);
    calendar.set(Calendar.DAY_OF_MONTH, day);

    long milliTime = calendar.getTimeInMillis();
现在,通过执行以下操作在日历视图中设置所选日期

  mCalendarView.setDate (milliTime, true, true); 

根据我的经验,我总是使用日历。set(Calendar.YEAR,YEAR)方法设置年份和日历。set(Calendar.MONTH,MONTH)方法设置月份和日历。set(Calendar.DAY,DAY)方法设置日期。所以我建议你也这么做

    String date = "1/6/2016";
    String parts[] = date.split("/");
    int day = Integer.parseInt(parts[0]);
    int month = Integer.parseInt(parts[1]);
    int year = Integer.parseInt(parts[2]);

    Calendar calendar = Calendar.getInstance();
    calendar.set(Calendar.YEAR, year);
    calendar.set(Calendar.MONTH, month);
    calendar.set(Calendar.DAY_OF_MONTH, day);

    long milliTime = calendar.getTimeInMillis();
现在,通过执行以下操作在日历视图中设置所选日期

  mCalendarView.setDate (milliTime, true, true); 


你想显示哪个月提示:什么是值?六月,我想显示的月份。不,这是5的常量值你想显示的月份提示:什么是值?六月,我想显示的月份。不,这是5的常量值谢谢。我刚刚将(calendar1.DATE)更改为(calendar1.getTimeInMillis())。现在我得到了我想要的。非常感谢你听到这个消息。你可以用我还需要一个帮助来表示你的感谢。如果你有时间,请尝试帮助我。我需要用不同的背景颜色在日历视图中显示日期。我们如何实现这类功能,比如我们需要将2016年8月2日、2016年8月15日和2016年8月18日的日期显示为红色,将本月剩余日期显示为绿色。那么,我们如何使用android CalendarView实现这种功能呢?评论是为了澄清现有答案。欢迎光临。谢谢。我刚刚将(calendar1.DATE)更改为(calendar1.getTimeInMillis())。现在我得到了我想要的。非常感谢你听到这个消息。你可以用我还需要一个帮助来表示你的感谢。如果你有时间,请尝试帮助我。我需要用不同的背景颜色在日历视图中显示日期。我们如何实现这类功能,比如我们需要将2016年8月2日、2016年8月15日和2016年8月18日的日期显示为红色,将本月剩余日期显示为绿色。那么,我们如何使用android CalendarView实现这种功能呢?评论是为了澄清现有答案。欢迎你来,好的。非常感谢。我已经实现了与您在这里编写的代码相同的代码。非常感谢你,兄弟。我还需要你的帮助。请帮帮我,兄弟。我需要用不同的背景色在日历视图中显示日期。我们如何实现这类功能,比如我们需要将2016年8月2日、2016年8月15日和2016年8月18日的日期显示为红色,将本月剩余日期显示为绿色。那么我们如何使用android CalendarView实现这种功能呢?好的。谢谢兄弟,好的。非常感谢。我已经实现了与您在这里编写的代码相同的代码。非常感谢你,兄弟。我还需要你的帮助。请帮帮我,兄弟。我需要用不同的背景色在日历视图中显示日期。我们如何实现这类功能,比如我们需要将2016年8月2日、2016年8月15日和2016年8月18日的日期显示为红色,将本月剩余日期显示为绿色。那么我们如何使用android CalendarView实现这种功能呢?好的。谢谢兄弟。