智能課程表Android版-學年學期星期的實現 – Android移動開發技術文章_手機開發 Android移動開發教學課程

 

 上次我們實現瞭日期和時間的動態顯示,這次我們來實現學年,學期,周次的顯示,如圖:

首先是學年學期的顯示:

Calendar c=Calendar.getInstance();

int year=c.get(Calendar.YEAR);

int month=c.get(Calendar.MONTH)+1;//Calendar對象獲得的月份值為實際的月份值減 1

if(2<month&&month<8)

{

    textview02.setText(year+"–"+(year+1));

    textview03.setText("第二學期");

}

else if(month<=2)

{

    textview02.setText((year-1)+"–"+year);

    textview03.setText("第一學期");

}

else 

{

    textview02.setText(year+"–"+(year+1));

    textview03.setText("第一學期");

}

這裡一般每年的2月到8月為當年學年到下一學年的第二學期,剛開始我認為其餘的月份即為當年到下一學年的第一學期,但是發現當年的月份為1月時雖然是第一學期,但是get(Calendar.YEAR)已經為下一年瞭,所以if(month<=2)時,setText((year-1)+"–"+year);

下面是周次的顯示:由於Calendar對象獲得的星期的值為:周日是 1,周一是 2,以此類推,所以:

Calendar c=Calendar.getInstance();

int day=c.get(Calendar.DAY_OF_WEEK);

switch (day) {

    case 2:

        textview05.setText("星期一");

        break;

    case 3:

        textview05.setText("星期二");

        break;

    case 4:

        textview05.setText("星期三");

        break;

    case 5:

        textview05.setText("星期四");

        break;

    case 6:

        textview05.setText("星期五");

        break;

    case 7:

        textview05.setText("星期六");

        break;

    default:

        textview05.setText("星期日");

        break;

}

最終的顯示效果為:

由於 周次的顯示牽涉到數據的存儲,因為首先要把本學年第一周周一的時間值獲得,然後建立數據庫表並存儲到數據庫中,所以我們暫時先不計算周次。

另外,由於學年學期和星期也都要動態改變,所以我們也要把他們都放在上次的Runnable類的run()方法中

 

摘自 tianshuguang的專欄

發佈留言