Android 中文 API (20) —— DatePicker

來源:互聯網
上載者:User

前言

  本章翻譯的是android.widget.DatePicker,版本為Android 2.2 r1,譯為日期選取器。歡迎更多朋友一起參與Android API 的中文翻譯行動!我的郵箱over140@gmail.com。

聲明

  歡迎轉載,但請保留文章原始出處:)

    部落格園:http://www.cnblogs.com

    農民伯伯: http://www.cnblogs.com/over140/

 

本文

  一、結構

    public class DatePicker extends FrameLayout

 

    java.lang.Object

      android.view.View

        android.view.ViewGroup

          android.widget.FrameLayout

                                 android.widget.DatePicker

 

  二、概述

    

    一個選擇年月日的日曆布局視圖。對於對話方塊樣式的行事曆檢視,參見DatePickerDialog.

 

  三、公用方法

         public int getDayOfMonth ()

         擷取選擇的天數

 

         public int getMonth ()

         擷取選擇的月份。(注意:返回數值為0..11,需要自己+1來顯示)

 

         public int getYear ()

         擷取選擇的年份

 

         public void init (int year, int monthOfYear, int dayOfMonth, DatePicker.OnDateChangedListener onDateChangedListener)

         初始化狀態。(譯者註:初始化年月日)

                   參數

                            year         初始年(譯者註:注意使用new Date()初始化年時,需要+1900,如下:date.getYear() + 1900

                            monthOfYear 初始月。

                            dayOfMonth  初始日。

                            onDateChangedListener         日期改變時通知使用者的事件監聽,可以為空白(null)。

 

         public void setEnabled (boolean enabled)

         設定視圖的啟用狀態。該啟用狀態隨子類的不同而有不同的解釋。

                   參數

                            enabled  設定為true表示啟動視圖,反之禁用。

 

         public void updateDate (int year, int monthOfYear, int dayOfMonth)

         更新日期

 

  四、受保護方法

         protected void dispatchRestoreInstanceState (SparseArray<Parcelable> container)

         重寫使我們能夠完全控制這小組件的儲存或恢複。(譯者註:此處直接調用了父類的ViewGroup. dispatchThawSelfOnly方法)

                   參數

                            container         SparseArray 持有儲存以前的狀態。The SparseArray which holds previously saved state.

 

         protected void onRestoreInstanceState (Parcelable state)

         允許視圖重新應用以前通過onSaveInstanceState()產生代表內部的狀態。這個函數決不調用一個空的狀態。

                   參數

                            state       The frozen state that had previously been returned by onSaveInstanceState().

返回以前調用onSaveInstanceState()儲存下來的狀態。

 

         protected Parcelable onSaveInstanceState ()

         允許檢視窗產生一個代表內部的狀態,以後可用於建立一個與之相同的新的執行個體。這種狀態應該只包含非持久或以後不能夠重建的資訊。例如,你決不儲存你當前在螢幕上的位置,因為這會在視圖的層面上重新計算放置一個新的執行個體。

         你可以儲存到這裡的一些例子:一個文字框中當前游標的位置(但通常不是文字本身,文字通常儲存在內容提供者(content provider)或其他持久的儲存中),一個列表視圖中的當前選中項。

                   傳回值

                            返回一個包含視圖目前狀態的Parcelable對象,或沒有什麼狀態儲存時返回null。預設實現返回null。

 

  五、補充

    5.1  如果只想顯示年月或者是月日,可以取巧用android:layout_marginLeft屬性控制顯示隱藏控制項一部分。

    5.2  如果用Date初始化的時候,需要注意年的問題:

             Date date = new Date();
             dpDate.init(date.getYear() + 1900, date.getMonth(), 1, null);

      代碼說明:dpDate為DatePicker控制項。

    5.3  相關文章連結

      DatePicker的一些問題

      日期選擇器(DatePicker)和時間選擇器(TimePicker)

      Android中動態輸入日期與時間-DatePicker與TimePicker應用

 

結束

  為了節約時間,從本章開始不提供PDF和WORD格式下載,定期出CHM格式的合集供大家下載。此外文章隨時可能更新,請大家保持連結。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.