2011-08-11 43 views
8

我试图实现CalendarView,屏幕上显示的时间非常荒谬(大约10秒),它只加载月份和星期几标题,它不显示任何日历内容。Android 3.0 CalendarView

使用与此video相同的代码,但看不到相同的结果。我试图启动它在一个对话框:

CalendarView calendarView = new CalendarView(this); dialog.setContentView(calendarView);

但是当我试图将它嵌入在一个活动花了屏幕的时间是相同的加载,同样未能正确显示。

+3

您是否尝试过跟踪您的应用?请参阅http://android-developers.blogspot.com/2010/10/traceview-war-story.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed:+blogspot/hsDu+(Android+Developers+Blog),以获取关于跟踪到底发生了什么。 – Jack

回答

17

跟踪帮助揭示了GregorianCalendar被称为数千次。 看来,当日历日不可见时,它会尝试计算所有日期,而不仅仅是可见日期。

通过明确设置layout_widthlayout_height来解决仅显示标题信息的CalendarView问题。 wrap_contentmatch_parent都不能正常显示日历内容。

+1

严格地说,您可以将'layout_width'保留为'match_parent',只需要明确设置高度。 – SaltyNuts