我正在開發一款名爲無限日曆的應用程序。這不是無限的,因爲一切都有限制,現在我正在找到這個限制。我正在使用CalendarView
來顯示日曆和JodaTime以幫助我處理日期。爲什麼這個CalendarView是空的(什麼都不顯示)?
我的佈局,只有一個觀點:
<CalendarView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:showWeekNumber="false"
android:shownWeekCount="5"
android:id="@+id/calendar">
</CalendarView>
而且我設置的代碼maxDate
和minDate
:
calendar.setMinDate (0);
calendar.setMaxDate (9223372017014400000L);
而且爲什麼我用9223372017014400000L
?因爲經過一些實驗,我發現這是JodaTime可以達到的最大值。爲什麼我沒有在佈局文件中設置它們?因爲我不知道格式。我之前嘗試了幾次,但它不斷拋出異常說,最大值小於最小值...
現在我認爲,這是如此的好。於是,我就日期設置爲一些非常大的數字:
Date date = new LocalDate (2000000, 1, 1).toDate();
calendar.setDate (date.getTime());
其實我甚至不知道如果我這樣做很好,如果我只是屠殺這一點。
現在發生了奇怪的事情。當我運行該應用程序時,CalendarView
只顯示頂部的月份,年份和星期幾!我搜索,發現類似這樣的一個問題:
Android CalendarView not displaying the days
但答案告訴OP設置尺寸match_parent
,我做到了明顯。
所以這裏提出的問題,有沒有特殊的原因呢?如果是的話,那是什麼,我該如何解決它?如果不是,CalendarView
的限制是多少?
更新:
我試圖設置最小日期爲默認值(未指定)和最大日期1/1/2000000,然後設置日期一千二萬分之一。現在日曆視圖在1999999顯示日期和其他日期!奇怪!
Jon Skeet請幫幫我!
查看更新。我嘗試了其他的東西,日曆顯示2000000年的日期 – Sweeper
我很困惑。你有沒有解決你的問題? – Michael
不行,因爲我還是不明白爲什麼年2000000可以,但是292278993不是 – Sweeper