我在使用CalendarView时遇到了问题。
我希望activity1中的用户转到activity2中的日历,然后触摸日期,然后转到activity3。
目前,如果用户想要触摸已经选择的日期(默认使用今天的日期)继续前进,他就不能,因为日历的唯一事件是OnDateChangeListener
,我无法让它工作使用OnClick
或OnTouch.
有人知道如何让它发挥作用吗?
这就是我的尝试:
public class CalendarioActivity extends Activity {
private CalendarView calendar;
@Override
protected void onCreate(Bundle SavedInstanceState) {
super.onCreate(SavedInstanceState);
calendar = new CalendarView(this);
calendar.setOnDateChangeListener(_DateSetListener);
calendar.setOnClickListener(_OnClickListener);
setContentView(calendar);
}
private OnClickListener _OnClickListener = new OnClickListener() {
public void onClick(View v) {
Date date = new Date(calendar.getDate());
Intent i=new Intent(CalendarioActivity.this,SelecionarHoraActivity.class);
i.putExtra("data",
new int[] {date.getDay(),date.getMonth(),date.getYear()});
startActivity(i);}};
private OnDateChangeListener _DateSetListener = new OnDateChangeListener() {
public void onSelectedDayChange(CalendarView view,
int year,
int month,
int dayOfMonth) {
Intent i = new Intent(CalendarioActivity.this,
SelecionarHoraActivity.class);
i.putExtra("data", new int[] {dayOfMonth, month, year});
startActivity(i);}};
}
答案 0 :(得分:0)
您是否尝试通过CalendarView
启用calendar.setClickable(true)
可点击。这将启用点击事件。
我不知道它是否会针对各个日期执行此操作,但如果我理解正确,它会启用onClickListener
。
答案 1 :(得分:0)
this.calendarView.setOnDateChangeListener(this);