按日历视图上的当天

时间:2012-09-05 07:16:51

标签: android

我正在使用CalendarView。我添加了 setOnDateChangeListener

    calendar.setOnDateChangeListener(new OnDateChangeListener() {
        @Override
        public void onSelectedDayChange(CalendarView view, int year, int month, int dayOfMonth) {
            System.err.println(dayOfMonth + ":" + month + ":" + year);

当我按任何一天观看其他活动时,它对我有用,但如果我想按当前日期回去,听众就无法工作。

enter image description here

2 个答案:

答案 0 :(得分:0)

它不会触发您的监听器,因为只有当您更改日期时它才有效。您必须在UI上绑定click事件,因此有必要扩展日历视图。

答案 1 :(得分:0)

我知道它并没有完全回答你的问题,但我遇到了同样的问题而且日历总是选择当前日期。为了避免第二个问题(在我的情况下,帮助解决第一个问题),我做的是在离开CalendarView之前将最后选择的日期存储在共享首选项中,在启动CalendarView时检索它,然后使用setDate设置它

long dateInMilliseconds = theDate.getTimeInMillis(); // theDate is a GregorianCalendar
calendar.setDate(dateInMilliseconds); // calendar is a CalendarView