2

我正在使用日历视图。我添加了setOnDateChangeListener

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

当我按视图中的任何一天进行其他活动时,它对我有用,但是如果我想按当前日期返回,则听众不起作用。

在此处输入图像描述

4

2 回答 2

0

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

于 2012-09-05T07:20:32.570 回答
0

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

long dateInMilliseconds = theDate.getTimeInMillis(); // theDate is a GregorianCalendar
calendar.setDate(dateInMilliseconds); // calendar is a CalendarView
于 2013-09-06T11:38:26.410 回答