Android開發之日曆控制項實現

來源:互聯網
上載者:User

本文介紹Android平台上幾種有用的的日曆控制項。

 

我們大家都知道,在Android平台3.0中才新增了行事曆檢視控制項,可以顯示網格狀的日曆內容,那麼對於3.0以下的版本要使用日曆控制項只能藉助第三方,目前用的最多的是CalendarView。

先簡單介紹下CalendarView日曆控制項的使用。

android.widget.CalendarView是從android.widget.FrameLayout中繼承。

 

CalendarView 類提供了基本的日曆設定方法:
 

long  getDate()  擷取從1970年,1月1日,0點0分0秒到現在的毫秒數,因為返回是long型最終只能截止到2038年

 
int  getFirstDayOfWeek()  //擷取當天是本周的第幾天,Android123提示返回的定義在java.util.Calendar類中,比如Calendar.Monday為星期一,定義值為2。
 
long  getMaxDate()  //擷取CalendarView支援1970年到那天的最大天數
 
long  getMinDate() //擷取CalendarView支援1970年到那天的最小天數
 
boolean  getShowWeekNumber()  //擷取是否顯示星期號
 
boolean  isEnabled()  //是否顯示本行事曆檢視
 
  public void setDate (long date, boolean animate, boolean center) //設定選擇日期到1970年的描述
 
void  setDate(long date) //設定選擇的日期描述到1970年
 
void  setEnabled(boolean enabled) //設定是否啟用視圖
 
void  setFirstDayOfWeek(int firstDayOfWeek)  //設定本周起始天數
 
void  setMaxDate(long maxDate)
 
void  setMinDate(long minDate)
 
void  setOnDateChangeListener(CalendarView.OnDateChangeListener listener)   //行事曆檢視修改的介面,這個介紹看下面。
 
void  setShowWeekNumber(boolean showWeekNumber) //設定是否顯示周號
 

  有關日曆控制項CalendarView的設定介面 android.widget.CalendarView.OnDateChangeListener 只實現了一個回調方法void onSelectedDayChange(CalendarView view, int year, int month, int dayOfMonth)。

 

這四個參數的具體介紹為

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的。可以實現上月和下月翻頁,設定事件等。
 
 
這個日曆控制項也比較強大,但外觀不夠友好。
 
 
 
 
這是我們自己實現的日曆控制項。可以通過選擇日期查詢相關資料等操作。
 
 
這是Android3.0及以上版本內建的日曆控制項。 
 
以上關於Android平台中幾種有用的日曆控制項,關於源碼我正在整理中,我將會在隨後的時間裡發布,敬請期待……
  
摘自  HarHar
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.