付費下載
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
【移動應用開發(fā)技術】ListView的屬性及方法詳解
近期在重新學習Android控件知識,目前進行到ListView,感覺這是一塊尤其難啃的硬骨頭:最為常用、用法較復雜、涉及的其他Android知識也較多。因此決定系統(tǒng)地好好復習一遍ListView。一、ListView類的繼承關系可以看出,ListView并不直接繼承于View,而是直接繼承于抽象類AbsListView.ListView的直接子類有:ExpandableListView.二、ListView概述
ListView是一個用來縱向顯示條目的視圖,這些條目內(nèi)容來自于與該ListView相關聯(lián)的ListAdapter.三、嵌套類class
ListView.FixedViewInfo//用來在列表內(nèi)展現(xiàn)一個固定位置視圖,如在列表頂端的header和在列表底端的footer四、XML屬性
1.ListView的XML屬性android:divider//在列表條目之間顯示的drawable或color
android:dividerHeight//用來指定divider的高度
android:entries//構(gòu)成ListView的數(shù)組資源的引用。對于某些固定的資源,這個屬性提供了比在程序中添加資源更加簡便的方式
android:footerDividersEnabled//當設為false時,ListView將不會在各個footer之間繪制divider.默認為true。
android:headerDividersEnabled//當設為false時,ListView將不會在各個header之間繪制divider.默認為true。2.繼承自AbsListView的XML屬性android:cacheColorHint//
表明這個列表的背景始終以單一、固定的顏色繪制,可以優(yōu)化繪制過程。
android:choiceMode//為視圖指定選擇的行為。可選的類型有:none、singleChoice、multipleChoice、multipleChoiceModal。
android:drawSelectorOnTop//
若設為true,選擇器將繪制在選中條目的上層。默認為false。
android:fastScrollEnabled//
設置是否允許使用快速滾動滑塊。
android:listSelector//
設置選中項顯示的可繪制對象,可以是圖片或者顏色屬性。
android:scrollingCache//
設置在滾動時是否使用繪制緩存。若設為true,則將使?jié)L動表現(xiàn)更快速,但會占用更內(nèi)存。默認為true。
android:smoothScrollbar//
為真時,列表會使用更精確的基于條目在屏幕上的可見像素高度的計算方法。默認該屬性為真,如果你的適配器需要繪制可變高的條目,他應該設為假。當該屬
性為真時,你在適配器在顯示變高條目時,滾動條的把手會在滾動的過程中改變大小。當設為假時,列表只使用適配器中的條目數(shù)和屏幕上的可見條目來決定滾動條的屬性。
android:stackFromBottom//
設置GridView和ListView是否將內(nèi)容從底部開始顯示。
android:textFilterEnabled//
當設為真時,列表會將結(jié)果過濾為用戶類型。前提是這個列表的Adapter必須支持Filterable接口。
android:transcriptMode//設置列表的transcriptMode.有如下選項可選:
//(1)disabled
禁用TranscriptMode,也是默認值;
//(2)normal
當新條目添加進列表中并且已經(jīng)準備好顯示的時候,列表會自動滑動到底部以顯示最新條目;
//(3)alwaysScroll
列表會自動滑動到底部,無論新條目是否已經(jīng)準備好顯示.3.繼承自ViewGroup的XML屬性android:addStatesFromChildren//
設置這個ViewGroup的drawable狀態(tài)是否包括子View的狀態(tài)。若設為true,當子View如EditText或Button獲得焦點時,整個ViewGroup也會獲得焦點。
android:alwaysDrawnWithCache//
設置ViewGroup在繪制子View時是否一直使用繪圖緩存。默認為true。
android:animationCache//
設置布局在繪制動畫效果時是否為其子View創(chuàng)建繪圖緩存。若設為true,將會消耗更多的內(nèi)存,要求持續(xù)時間更久的初始化過程,但表現(xiàn)更好。默認為true。
android:clipChildren//
設置子View是否受限于在自己的邊界內(nèi)繪制。若設為false,當子View所占用的空間大于邊界時可以繪制在邊界外。默認為true。
android:clipToPadding//定義布局間是否有間距。默認為true。
android:descendantFocusability//
定義當尋找一個焦點View的時候,ViewGroup與其子View之間的關系??蛇x項為:
//(1)beforeDescendants
ViewGroup會比其子View更先獲得焦點;
//(2)afterDescendants
只有當無子View想要獲取焦點時,ViewGroup才會獲取焦點;
//(3)blockDescendants
ViewGroup會阻止子View獲取焦點
android:layoutAnimation//定義當ViewGroup第一次展開時的動畫效果,也可人為地在第一次展開后調(diào)用。
android:persistentDrawingCache//
定義繪圖緩存的持久性。有如下可選項:
//(1)none
當使用過后不保留繪圖緩存
//(2)animation
在layout
animation之后保留繪圖緩存
//(3)scrolling
在Scroll操作后保留繪圖緩存
//(4)all
always保留繪圖緩存4.繼承自View的XML屬性
太多了………………饒過我吧五、常用public方法
1.add/remove
方法void
addFooterView(View
v)//增加一個固定在列表底部的View,參數(shù)
v為欲添加的視圖
void
addFooterView(View
v,Object
data,boolean
isSelectable)//增加一個固定在列表底部的View,參數(shù)
v為欲添加的視圖,data為與View綁定的數(shù)據(jù),isSelectable設置是否可選
void
addHeaderView(View
v)//增加一個固定在列表頂部的View,參數(shù)
v為欲添加的視圖
void
addHeaderView(View
v,Object
data,boolean
isSelectable)//增加一個固定在列表頂部的View,參數(shù)
v為欲添加的視圖,data為與View綁定的數(shù)據(jù),isSelectable設置是否可選
boolean
removeFooterView(View
v)//去除一個之前添加的FooterView,參數(shù)v為欲刪除的視圖,若成功刪除則返回true
boolean
removeHeaderView(View
v)//去除一個之前添加的HeaderView,參數(shù)v為欲刪除的視圖,若成功刪除則返回true
2.響應事件方法boolean
OnKeyDown(int
keyCode,KeyEvent
event)//當按下鍵時響應
boolean
OnKeyMultiple(int
keyCode,int
repeatCount,KeyEvent
event)//重復按下鍵時響應,repeatCount為按下次數(shù)
boolean
OnKeyUp(int
keyCode,KeyEvent
event)//當鍵被釋放時響應3.get方法ListAdapter
getAdapter()//返回ListView正在使用的Adapter
Drawable
getDivider()//以Drawable形式返回divider
int
getDividerHeight()//這個……真不想解釋了
int
getFooterViewCount()//返回FooterView的個數(shù),若無返回0
int
getHeaderViewCount()//返回HeaderView的個數(shù),若無返回0
boolean
getItemsCanFocus()//返回是否有可獲得焦點的條目
int
getMaxScrollAmount()//The
maximum
amount
a
list
view
will
scroll
in
response
to
an
arrow
event.(求翻譯)
Drawable
getOverscrollFooter()//返回繪制在所有條目之下的drawable
Drawable
getOverscrollHeader()//返回繪制在所有條目之上的drawable
4.set方法void
setAdapter(ListAdapter
adapter)//為ListView綁定Adapter
void
setCacheColorHint(int
color)//參數(shù)為0時,將CacheColor設為透明;參數(shù)非零時,指定一種顏色作為ListView的背景
void
setDivider(Drawable
divider)//為ListView中每個條目之間設定一個Divider
void
setDividerHeight(int
height)//設定Divider的高度,單位為pixel
void
setFooterDividerEnabled(boolean
footDividerEnabled)//設置FooterView之間的Dividers是否可用
void
setHeaderDividerEnabled(boolean
headDividerEnabled)//設置HeaderView之間的Dividers是否可用
void
setItemsCanFocus(boolean
itemsCanFocus)//設置是否包含可獲取焦點的Item
void
setOverscrollFooter(Drawable
footer)//設置一個當滾動時或ListView未填滿屏幕時能顯示在ListView下方的Drawable
void
setOverscrollHeader(Drawable
header)//設置一個當滾動時能顯示在ListView上
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 老年糖尿病患者的個體化溝通方案
- 油制氫裝置操作工風險識別評優(yōu)考核試卷含答案
- 變壓器試驗工操作評估測試考核試卷含答案
- 高壓試驗工崗前決策判斷考核試卷含答案
- 膠印版材生產(chǎn)工崗前技術改進考核試卷含答案
- 脂肪醇胺化操作工發(fā)展趨勢競賽考核試卷含答案
- 棉花加工工崗前核心管理考核試卷含答案
- 玩具設計師崗前安全綜合考核試卷含答案
- 石作文物修復師創(chuàng)新思維能力考核試卷含答案
- 老年神經(jīng)外科手術麻醉風險評估工具
- 2024年地理信息技術與應用能力初級考試真題(一)(含答案解析)
- 初中英語必背3500詞匯(按字母順序+音標版)
- 《國家基層高血壓防治管理指南2025版》解讀 2
- 實施指南(2025)《HG-T 6214-2023 鄰氨基苯酚》
- 安全生產(chǎn)相關工作主要業(yè)績及研究成果
- 2025廣西百色能源投資發(fā)展集團有限公司招聘7人(第一批)筆試歷年參考題庫附帶答案詳解
- 地下礦山職工安全培訓課件
- 供熱安全培訓課件
- 供水管網(wǎng)搶修課件
- 培訓意識形態(tài)課件
- 運輸公司安全領導小組會議記錄內(nèi)容
評論
0/150
提交評論