Android 如何为CalendarView设置OnClickListener?

Android 如何为CalendarView设置OnClickListener?,android,Android,我一直在开发一些Android应用程序,代码如下: final CalendarView calendarView=(CalendarView)layout.findViewById(R.id.calendarView); calendarView.setClickable(true); calendarView.setOnClickListener(new OnClickListener() { @Override pu

我一直在开发一些Android应用程序,代码如下:

    final CalendarView calendarView=(CalendarView)layout.findViewById(R.id.calendarView);
    calendarView.setClickable(true);
    calendarView.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                Log.e("event", "click");
    });
    calendarView.setOnLongClickListener(new OnLongClickListener() {

            @Override
            public boolean onLongClick(View v) {
                Log.e("event", "long click");
                return false;
            }

    });
    calendarView.setOnDateChangeListener(new OnDateChangeListener(){

            @Override
            public void onSelectedDayChange(CalendarView view, int year,
                    int month, int dayOfMonth) {
                Log.e("event", "datachanged");
            }

    });

我需要捕捉“OnClick”事件,但我只捕捉“OnDataChange”事件。我不明白为什么。请帮帮我。先谢谢你

我猜“CalendarView”有一些子视图,您可以在这些子视图上注册“OnClickListener”,而不是在“CalendarView”上注册


看一看,它扩展了“FrameLayout”。

因为日历是一个对话框,而不是视图使用
DialogInterface.OnClickListener未查看。OnClickListener将执行此操作

calendarView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener(){
            @Override
            public void onGlobalLayout()
            {
                  //your code here
            }
        });

我刚刚看过这篇文章,但我不明白为什么它能帮我?你能给我举个例子吗?