本文介紹Android平臺上幾種有用的的日歷控件。
我們大家都知道,在Android平臺3.0中才新增了日歷視圖控件,可以顯示網(wǎng)格狀的日歷內(nèi)容,那么對于3.0以下的版本要使用日歷控件只能借助第三方,目前用的最多的是CalendarView。
先簡單介紹下CalendarView日歷控件的使用。
android.widget.CalendarView是從android.widget.FrameLayout中繼承。
CalendarView 類提供了基本的日歷設(shè)置方法:
long getDate() 獲取從1970年,1月1日,0點0分0秒到現(xiàn)在的毫秒數(shù),因為返回是long型最終只能截止到2038年
int getFirstDayOfWeek() //獲取當(dāng)天是本周的第幾天,Android123提示返回的定義在java.util.Calendar類中,比如Calendar.Monday為星期一,定義值為2。
long getMaxDate() //獲取CalendarView支持1970年到那天的最大天數(shù)
long getMinDate() //獲取CalendarView支持1970年到那天的最小天數(shù)
boolean getShowWeekNumber() //獲取是否顯示星期號
boolean isEnabled() //是否顯示本日歷視圖
public void setDate (long date, boolean animate, boolean center) //設(shè)置選擇日期到1970年的描述
void setDate(long date) //設(shè)置選擇的日期描述到1970年
void setEnabled(boolean enabled) //設(shè)置是否啟用視圖
void setFirstDayOfWeek(int firstDayOfWeek) //設(shè)置本周起始天數(shù)
void setMaxDate(long maxDate)
void setMinDate(long minDate)
void setOnDateChangeListener(CalendarView.OnDateChangeListener listener) //日歷視圖修改的接口,這個介紹看下面。
void setShowWeekNumber(boolean showWeekNumber) //設(shè)置是否顯示周號
有關(guān)日歷控件CalendarView的設(shè)置接口 android.widget.CalendarView.OnDateChangeListener 只實現(xiàn)了一個回調(diào)方法void onSelectedDayChange(CalendarView view, int year, int month, int dayOfMonth)。
這四個參數(shù)的具體介紹為
view The view associated with this listener.
year The year that was set.
month The month that was set [0-11].
dayOfMonth The day of the month that was set.
下面給大家展示這幾種有用的日歷控件效果圖:
這是CalendarView的效果圖?梢詫崿F(xiàn)上月和下月翻頁,設(shè)置事件等。
這個日歷控件也比較強大,但外觀不夠友好。
這是我們自己實現(xiàn)的日歷控件?梢酝ㄟ^選擇日期查詢相關(guān)數(shù)據(jù)等操作。
這是Android3.0及以上版本自帶的日歷控件。
以上關(guān)于Android平臺中幾種有用的日歷控件,關(guān)于源碼我正在整理中,我將會在隨后的時間里發(fā)布,敬請期待……