android api 中文 (73)—— AdapterView

前言

  本章內容是android.widget.AdapterView,版本爲Android 2.3 r1,翻譯來自"cnmahj",歡迎大家訪問他的博客:http://android.toolib.net/blog/,再次感謝"cnmahj"!歡迎你一起參與Android API 的中文翻譯,聯繫我[email protected]。 

 

聲明

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

    博客園:http://www.cnblogs.com/

    Android中文翻譯組:http://code.taobao.org/project/view/404/

 

正文

  一、結構

public abstract class AdapterView<T extends Adapter> extends ViewGroup

        

java.lang.Object

android.view.View

         android.view.ViewGroup

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

 

直接子類

             AbsListViewAbsSpinner

間接子類

ExpandableListViewGalleryGridViewListViewSpinner

 

  二、概述

AdapterView 是內容由 Adapter 來決定的視圖類。

參見 ListViewGridViewSpinner 和 Gallery 等常見子類。

 

  三、常量

  public static final int INVALID_POSITION

  代表無效的位置。有效值的範圍是 0 到當前適配器項目數減 1 。

  常量值: -1 (0xffffffff)

 

  public static final long INVALID_ROW_ID

  代表空或者無效的行ID。

  常量值: -9223372036854775808 (0x8000000000000000)

 

  public static final int ITEM_VIEW_TYPE_HEADER_OR_FOOTER

  當條項是列表頭或列表尾時,調用 getItemViewType(int) 函數的返回值。

  常量值: -2 (0xfffffffe)

 

  public static final int ITEM_VIEW_TYPE_IGNORE

  當適配器禁止條項的視圖再利用時,調用 getItemViewType(int) 函數的返回值。

  常量值: -1 (0xffffffff)

 

  四、構造函數

  public AdapterView (Context context)

  構造函數

 

  public AdapterView (Context context, AttributeSet attrs)

  構造函數

 

  public AdapterView (Context context, AttributeSet attrs, int defStyle)

  構造函數

 

  五、公共方法

  public void addView (View child)

  該類不支持該方法,如果調用將拋出 UnsupportedOperationException 異常。

  參數

         child  忽略

      異常

        UnsupportedOperationException 調用該方法時

 

  public void addView (View child, int index)

  該類不支持該方法,如果調用將拋出 UnsupportedOperationException 異常。

  參數

           child         忽略。

  index       忽略。

  拋出

         UnsupportedOperationException 調用該方法時

 

  public void addView (View child, int index, ViewGroup.LayoutParams params)

  該類不支持該方法,如果調用將拋出 UnsupportedOperationException 異常。

  參數

           child         忽略。

  index       忽略。

  params  忽略。

  拋出

         UnsupportedOperationException 調用該方法時

 

 

  public void addView (View child, ViewGroup.LayoutParams params)

  該類不支持該方法,如果調用將拋出 UnsupportedOperationException 異常。

  參數

       child         忽略。

   params  忽略。

  拋出

         UnsupportedOperationException 調用該方法時

 

  public boolean dispatchPopulateAccessibilityEvent (AccessibilityEvent event)

  分發 AccessibilityEvent 事件到 該視圖 的子視圖中。

  參數

         event       事件。

  返回值

  如果事件分發完成,返回真。 

 

  public abstract T getAdapter ()

  返回當前與該小部件關聯的適配器。

  返回值

  用於提供視圖內容的適配器。 

 

  public int getCount ()

返回值

 AdapterView 相關聯的適配器的條目數量。(該值是數據條目的數量, 可能大於可見的視圖的數量。) 

 

  public View getEmptyView ()

  當前適配器無內容時,AdapterView 會顯示特殊的空視圖。 空視圖用於告訴用戶,該 AdapterView 沒有數據。

  返回值

  適配器爲空時顯示的視圖。 

 

  public int getFirstVisiblePosition ()

  返回顯示在屏幕上的第一個元素在適配器中所處的位置。

  返回值

  在適配器數據集中的位置。 

 

  public Object getItemAtPosition (int position)

  取得列表中指定位置的數據。

  參數

         position 要取得數據的位置。

  返回值

  列表中指定位置的數據。 

 

  public long getItemIdAtPosition (int position) 

  (譯者注:關於此方法的分析,參見這裏)

 

  public int getLastVisiblePosition ()

  返回顯示在屏幕上的最後一個元素在適配器中所處的位置。

  返回值

  在適配器數據集中的位置。 

 

  public final AdapterView.OnItemClickListener getOnItemClickListener ()

返回值

  點擊 AdapterView 中的條目時執行的回調函數;沒有設置時返回空。

 

  public final AdapterView.OnItemLongClickListener getOnItemLongClickListener ()

返回值

取得長按 AdapterView 中的條目時執行的回調函數的監聽器;未設置則返回空。 

 

  public final AdapterView.OnItemSelectedListener getOnItemSelectedListener () 

 

  public int getPositionForView (View view)

  取得適配器項目對應的視圖或其子視圖在適配器的數據中所處的位置。

  參數

         view         適配器條目或其後代的視圖。調用時該項目在 AdapterView 中必須可見。

  返回值

  視圖在適配器數據集中的位置;如果視圖不在數據列表中或當前不可見,則返回 INVALID_POSITION 

 

  public Object getSelectedItem ()

返回值

當前選中條目對應的數據;無選中條目時返回空。 

 

  public long getSelectedItemId ()

返回值

當前選中條目相應的 ID;無選中條目則返回 INVALID_ROW_ID 

 

  public int getSelectedItemPosition ()

  返回當前選中項目在適配器數據中的位置。

  返回值

  返回從零開始的位置(索引)信息,沒有選擇條目時返回 INVALID_POSITION 

 

  public abstract View getSelectedView ()

返回值

當前選中條目對應的視圖;無選中條目時返回空。 

 

  public boolean performItemClick (View view, int position, long id)

  如果定義了 OnItemClickListener 則調用它。

  參數

  view         AdapterView 中被點擊的視圖。

  position 視圖在適配器中的索引。

  id     點擊的條目的行 ID

  返回值

  如果成功調用了定義的 OnItemClickListener 則返回真;否則返回假。 

 

  public void removeAllViews ()

  該類不支持該方法,如果調用將拋出 UnsupportedOperationException 異常。

  拋出

        UnsupportedOperationException調用該方法時

 

  public void removeView (View child)

  該類不支持該方法,如果調用將拋出 UnsupportedOperationException 異常。

  參數

  child         忽略。

  拋出

         UnsupportedOperationException調用該方法時

 

  public void removeViewAt (int index)

  該類不支持該方法,如果調用將拋出 UnsupportedOperationException 異常。

  參數

         index       忽略。

  拋出

         UnsupportedOperationException調用該方法時

 

  public abstract void setAdapter (T adapter)

  設置用於爲該小部件的視圖提供用於顯示的數據的適配器。

  參數

         adapter 用於創建視圖內容的適配器。

 

  public void setEmptyView (View emptyView)

  設置適配器內容爲空時顯示的視圖。 

 

  public void setFocusable (boolean focusable)

 

  設置該視圖是否可以獲取焦點。 設爲假時,可以確保在觸控模式中該視圖不能得到焦點。

  參數

         focusable         設爲真時,該視圖可以得到焦點。

 

  public void setFocusableInTouchMode (boolean focusable)

  設置在觸控模式下該視圖是否可以獲取焦點。 設爲真時,可以保證視圖可以得到焦點。

  參數         

             focusable        設爲真時,該視圖在觸控模式下可以得到焦點。

 

  public void setOnClickListener (View.OnClickListener l)

  註冊點擊該視圖時執行的回調函數。如果該視圖不可點擊,會將其改爲可以點擊的狀態。

  參數

         l       事件發生時運行的回調函數。

 

  public void setOnItemClickListener (AdapterView.OnItemClickListener listener)

  註冊單擊 AdapterView 中的條目時執行的回調函數。

  參數

         listener  將要調用的回調。

 

  public void setOnItemLongClickListener (AdapterView.OnItemLongClickListener listener)

  註冊長按 AdapterView 中的條目時執行的回調函數。

  參數

         listener  事件發生時運行的回調函數。

 

  public void setOnItemSelectedListener (AdapterView.OnItemSelectedListener listener)

  註冊選中 AdapterView 中的條目時執行的回調函數。

  參數

         listener  事件發生時運行的回調函數。

 

  public abstract void setSelection (int position)

  設置當前選擇條目。爲了支持無障礙功能,重寫該方法的子類必須首先調用父類的該方法。

  參數

         position 選擇的數據條目的索引(從零開始)。

 

  六、保護方法

  protected boolean canAnimate ()

  指示視圖組是否能夠在首次佈局後爲其子視圖提供動畫效果的顯示。

  返回值

  如果子視圖可以使用動畫效果則返回真,否則返回假。

 

  protected void dispatchRestoreInstanceState (SparseArray<Parcelable> container)

  了防止適配器生成的視圖被解而重寫。

  參數

          container    保存有之前存的狀信息的 SparseArray

 

  protected void dispatchSaveInstanceState (SparseArray<Parcelable> container)

  了防止適配器生成的視圖凍結而重寫。

  參數

          container    保存視圖 SparseArray

 

  protected void onLayout (boolean changed, int left, int top, int right, int bottom)

  該視圖設置其子視圖的大小及位置時調用。派生可以重寫此方法,並其子佈局。

  參數

  changed     是否爲視圖設置了新的大小和位置。

  left 於父視圖的左的位置。

  top 於父視圖部的位置。

  right    於父視圖的右的位置。

  bottom 於父視圖的底部的位置。

 

  七、補充

      補充說明

  本文由Android中文在線文檔 轉換而成。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章