私はカスタムのカレンダービューを作成しようとしています。そのために月の曜日を取得するのにMonthDisplayHelper、表示するにはGridView
を使用します。Android MonthDisplayHelperは適切な順序で日付を提供しません。
問題はMonthDisplayHelper
がこの順序で、次の日に私を与え、現在の日付が2012年2月20日であれば例えば、私の右の日の順序を与えていないMonthDisplayHelper
ことです:
日---月 - - 火---水---木---金---土
31 -------- 1 ------ 2 ------ 3 --- ---- 4 ------ 5 ------ 6
7 ------ 8 ------ 9 ------ 10 ----- - 11 ------ 12 ---- 13
14 ----- 15 - ---- 16 ----- 17 ----- 18 ---- 19 ----- 20 - < =ここの当日は土ですが、実際は月です
21 - ---- 22 ----- 23 ----- 24 ----- 25 ----- 26 ----- 27
28 ------ 29 --- --- 1 ------ 2 ------ 3 ------ 4 ------ 5
したがって、前月の日は29日(日曜日)から開始する必要があります。来月日で終了(3土曜に)
私はこのようなMonthDisplayHelper
から日取得:
calendarHelper = new MonthDisplayHelper(2012, 1, Calendar.SUNDAY);
int thisDay = calendarHelper.getDayAt(rowIndex, columnIndex);
と私はrowIndexプロパティおよびcolumnIndexににgetView()
はこのように呼ばれるたびにインクリメントしています:
if (columnIndex >= 7) {
rowIndex++;
columnIndex = -1;
}
columnIndex += 1;
いくつかのカレンダーライブラリ(http://stackoverflow.com/a/8242625/119895)があります。私は彼らがこの問題をどのように扱っているかを調べるでしょう。 – Macarse
ありがとう、私はより多くのデバッグを行い、MonthDisplayHelperは私に正しい日を与えることに気付いたが、私は私のgridViewアダプタは今問題だと思う.. – Cata
私のアダプタgetView()メソッドは、とにかく私はそれから得るインデックスのための0と私は増分を作っている.. – Cata