Как заполнить gridview для календаря? - PullRequest
1 голос
/ 24 ноября 2010

У меня есть сетка 7x6. Здесь я должен заполнить календарь на выбранный месяц. у меня есть дата, месяц и год. с помощью этих значений можно ли заполнить мой вид сетки с помощью любого алгоритма? так же, как это alt text

1 Ответ

9 голосов
/ 24 ноября 2010

Я бы сказал, используйте java-класс "GregorianCalendar":

http://developer.android.com/reference/java/util/GregorianCalendar.html

Я написал простую Java-программу, чтобы продемонстрировать, как вы ее заполнили:

    //calendar for November 1986
    GregorianCalendar gCal = new GregorianCalendar(1986, Calendar.NOVEMBER, 1);
    //this gets the day of week range 1-7, Sunday - Saturday
    int currentDay = gCal.get(Calendar.DAY_OF_WEEK);
    //backtracks to the beginning of current week (Sunday)
    gCal.add(Calendar.DAY_OF_YEAR, Calendar.SUNDAY - currentDay);

    int gridSizeX = 7, gridSizeY = 6;
    for (int i = 0; i < gridSizeY; i++)
    {
        for (int j = 0; j < gridSizeX; j++)
        {
            //fill in your cell with this value
            System.out.print(gCal.get(Calendar.DAY_OF_MONTH));
            System.out.print(" ");

            //add one to the day and keep going
            gCal.add(Calendar.DAY_OF_YEAR, 1);
        }
        System.out.println();
    }
...