Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 關於android開發 >> Android學習筆記(23):24.列表項的容器—AdapterView的子類們

Android學習筆記(23):24.列表項的容器—AdapterView的子類們

編輯:關於android開發

Android學習筆記(23):24.列表項的容器—AdapterView的子類們


AdapterView的子類的子類ListView、GridView、Spinner、Gallery、AdapterViewFlipper和StackView都是作為容器使用,Adapter負責提供各個列表項的內容。

\

1.列表視圖ListView和ListActivity:

以垂直列表的形式顯示列表項。

生成列表視圖有如下兩種方法:

(1).直接使用ListView

(2).讓Activity繼承ListActivity

ListView支持的XML屬性和相關方法:

Attribute Name

Related Method

Description

android:divider

 

設置List列表項的分隔條(顏色或Drawable)

android:dividerHeight

 

設置分隔條的高度

android:entries

 

指定一個數組資源,用於填充列表的內容

android:footerDividersEnabled

 

設置為false,不在footer View前繪制分隔條

android:headerDividersEnabled

 

設置為false,不在header View後繪制分隔條

2.可展開的列表視圖ExpandableListView

ExpandableListView是ListView的子類,它把列表項分為幾組,每組裡包含多個列表項。

與其他列表視圖不同的是:ExpandableListView的列表項應該由ExpandableListAdapter提供。

與Adapter類似:ExpandableListAdapter也有三種常用方式:

(1).擴展BaseExpandableListAdapter實現ExpandableListAdapter。

(2).使用SimpleExpandableListAdapter將兩個List集合包裝成ExpandableListAdapter。

(3).使用SimpleCursorTreeAdapter將Cursor中的數據包裝成SimpleCursorTreeAdapter。

ExpandableListView支持的XML屬性:

Attribute Name

Related Method

Description

android:childDivider

 

指定各組內子列表項之間的分隔條

android:childIndicator

 

顯示在子列表項旁邊的Drawable對象

android:groupIndicator

 

顯示在組列表項旁邊的Drawable對象

擴展BaseExpandableListAdapter實現ExpandableListAdapter的時候需要實現的4個方法:

getGroupCount():返回包含組列表項的數量

getGroupView():返回的View對象將作為組列表項

getChildrenCount():返回特定組包含的子列表項的數量

getChildView():返回的View對象將作為特定組、特定位置的子列表項

3.網格視圖GridView:

按行、列分布的方式顯示多個組件。

 

GridView支持的XML屬性和相關方法:

Attribute Name

Related Method

Description

android:columnWidth

setColumnWidth(int)

設置列的寬度

android:gravity

setGravity(int)

設置對齊方式

android:horizontalSpacing

setHorizontalSpacing(int)

設置各元素之間的水平間距

android:numColumns

setNumColumns(int)

設置列數

android:stretchMode

setStretchMode(int)

設置拉伸模式

android:verticalSpacing

setVerticalSpacing(int)

設置各元素之間的垂直間距

android:stretchMode:支持的屬性:

NO_STRETCH:不拉伸

STRETCH_COLUMN_WIDTH:僅拉伸表格元素本身

STRETCH_SPACING:僅拉伸元素之間的間距

STRETCH_SPACING_UNIFORM:表格元素本身、元素之間的間距一起拉伸

4.列表選擇框Spinner:

用下拉列表的形式顯示列表項。

Spinner支持的XML屬性和相關方法:

Attribute Name

Related Method

Description

android:dropDownHorizontalOffset

setDropDownHorizontalOffset(int)

設置選擇框的水平偏移量

android:dropDownSelector

 

設定spinnerMode=”dropdown”時列表選擇器的顯示效果

android:dropDownVerticalOffset

setDropDownVerticalOffset(int)

設置選擇框的垂直偏移量

android:dropDownWidth

setDropDownWidth(int)

設置選擇框的寬度

android:gravity

setGravity(int)

設置對齊方式

android:popupBackground

setPopupBackgroundResource(int)

設置選擇框的背景色

android:prompt

 

設置選擇框的提示信息

android:spinnerMode

 

設置Spinner的顯示模式

spinnerMode可選的屬性:

dialog = 0:Spinner會被作為一個對口窗口來顯示

dropdown = 1:Spinner會作為一個內嵌的下拉列表來顯示

5.Gallery

顯示一個水平的列表選擇框,允許用戶通過拖動來查看上一個、下一個。Android推薦使用HorizontalScrollView和ViewPager組件來代替Gallery。

6.AdapterViewFlipper

繼承自AdapterViewAnimator,AdapterViewFlipper每次只能顯示Adapter中的一個列表項,程序通過showPrevious()和showNext()方法來顯示上一個、下一個列表項。組件切換時可以自動動畫效果。還有startFlipper()方法用於自動播放下一個列表項。

AdapterViewAnimator支持的XML屬性和相關方法:

Attribute Name

Related Method

Description

android:animateFirstView

 

設置顯示第一個列表項時是否使用動畫

android:inAnimation

 

設置組件顯示時使用的動畫

android:loopViews

 

設置循環到底是否轉頭到第一個列表項

android:outAnimation

 

設置組件隱藏時使用的動畫

AdapterViewFlipper支持的XML屬性和相關方法:

Attribute Name

Related Method

Description

android:autoStart

startFlipping()

設置該組件是否自動播放

android:flipInterval

setFlipInterval(int)

設置自動播放的時間間隔

7.StackView

繼承自AdapterViewAnimator,StackView把列表項“堆疊”在一起,以這種方式顯示列表項。程序通過showPrevious()和showNext()方法來顯示上一個、下一個列表項。

列表項切換時出現的是堆疊一起的卡片會出現的動畫效果。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved