天天看點

Android中文API (39) —— AbsSpinner

正文

  一、結構

    public abstract class AbsSpinner extends AdapterView<T extends Adapter>

    java.lang.Object

      android.view.ViewGroup

                  android.widget.AdapterView<T extends android.widget.Adapter>

                       android.widget.AbsSpinner

  二、概述

    下拉清單的基類。 Sdk可能不再使用到該類(譯者注:我認為是過時了)

  三、XML屬性

屬性名稱

描述

android:entries

引用一個資料源填充Spinner這是一種比程式設計填充Spinner更簡單的方式 。

  四、公共方法

         public SpinnerAdapter getAdapter ()

  傳回與目前部件相關聯的擴充卡

     傳回值

                 該擴充卡用于提供視圖内容

public int getCount ()

傳回值

            與此相關的擴充卡AdapterView所擁有的項目數量。(這個資料項,可能比顯示的視圖資料量還大。)

public View getSelectedView ()

 這個視圖對應目前選擇的項,或者如果不選擇視圖則為null

  public void onRestoreInstanceState (Parcelable state)

  允許視圖重新應用以前通過onSaveInstanceState()生成代表内部的狀态。這個函數決不能以一個空值狀态被調用。

    參數

state  傳回以前調用onSaveInstanceState()儲存下來的狀态。

public Parcelable onSaveInstanceState ()

允許視圖生成一個代表内部的狀态,以後可用于建立一個與之相同的新的執行個體。這個狀态隻可包含那些暫時的或不能被重建的資訊。例如,你無法将你目前的位置儲存在螢幕上,因為當有一個新的對象出現在這個視圖層次上就會自動重新計算。

以下有些執行個體:當光标停留在一個文本視區上(但是通常來說不能是實文檔,因為那個是己儲存在内容提供者或者其它長久儲存器中),目前所選的項位于一個清單視圖中

傳回一個Parcelable對象包含了目前視圖動态狀态,或者傳回null如果沒有儲存,預設傳回值為null。

public int pointToPosition (int x, int y)

參數

x      局部坐标X(譯者注:清單範圍内的坐标X)

y      局部坐标Y(譯者注:清單範圍内的坐标Y)

          傳回值

傳回這個位置包含的指定點(譯者注:傳回坐标(item)在清單中的順序),如果這2個點不相交傳回INVALID_POSITION

public void requestLayout ()

重寫以防止布局視圖時出現大量布局要求。(譯者注:這個方法通常在視圖認為它自己不再合适它目前的邊界的情況下被調用)

public void setAdapter (SpinnerAdapter adapter)

該擴充卡用于提供資料支援這個Spinner。他還提供了改變基于他們選擇的相對位置 的標明項

adapter 該SpinnerAdapter用于下拉清單

public void setSelection (int position, boolean animate)

直接跳到資料擴充卡中指定項

public void setSelection (int position)

設定目前選中項,為了支援可通路的子類重寫此方法,必須首先調用父類的方法。

position 索引,被選中的資料項(從0開始)

  五、受保護方法

         protected ViewGroup.LayoutParams generateDefaultLayoutParams ()

  傳回預設設定的布局參數。這些參數是在請求傳遞給addView(View)還沒有布局的時候已經設定好了的。如果是傳回null,則從addView抛出一個異常

  傳回值

  參數的預設布局或null

本文轉自over140 51CTO部落格,原文連結:http://blog.51cto.com/over140/582625,如需轉載請自行聯系原作者

繼續閱讀