標簽:
UITableView-------表視圖--繼承UIScrollView並遵守NSCoding協議
屬性
frame-------------設置控件的位置和大小
backgroundColor--------設置控件的顏色
style--------獲取表視圖的樣式
dataSource---------設置UITableViewDataSource的代理
delegate---------設置UITableViewDelegate代理
sectionHeaderHeight------設置組表視圖的頭標簽高度
sectionFooterHeight--------設置級表視圖的尾標簽高度
backgroundView----------設置背景視圖,只能寫入
editing----------是否允許編輯,默認是NO
allowsSelection----------在非編輯下,行是否可以選中,默認為YES
allowsSelectionDuringEditing----------控制某一行時,是否可以編輯,默認為NO
allowsMultipleSelection--------是否可以選擇多行,默認為NO
allowsMutableSelectionDuringEditing----------在選擇多行的情況下,是否可以編輯,默認為NO
sectionIndexMinimumDisplayRowCount-------------顯示某個組索引列表在右邊當行數達到這個值,默認是NSInteger的最大值
sectionIndexColor------------選擇某個部分的某行改變這一行上文本的顏色
sectionIndexTrackingBackgroundColor--------設置選中某個部分的背景顏色
separatorStyle----------設置單元格分隔線的樣式
separatorColor---------設置選中單元格分隔線的顏色
tableHeaderView---------設置組表的頭標簽視圖
tableFooterView----------設置組表的尾標簽視圖
UITableView類目屬性
section--------獲取當前在哪個組內
row------------獲取當前單元格是第幾行
方法:
初始化方法:
initWithFrame:-----------設置表的大小和位置
initWithFrame:style---------設置表的大小,位置和樣式(組,單一)
setEditing:----------表格進入編輯狀態,無動畫
setEditing: animated:---------表格進入編輯狀態,有動畫
reloadData---------------刷新整個表視圖
reloadSectionIndexTitles--------刷新索引欄
numberOfSections-----------獲取當前所有的組
numberOfRowsInSection:---------獲取某個組有多少行
rectForSection:----------獲取某個組的位置和大小
rectForHeaderInSection:---------獲取某個組的頭標簽的位置和大小
rectForFooterInSection:-----------獲取某個組的尾標簽的位置和大小
rectForRowAtIndex:-----------獲取某一行的位置和大小
indexPathForRowAtPoint-------------點擊某一個點,判斷是在哪一行上的信息。
indexPathForCell:------------獲取單元格的信息
indexPathsForRowsInRect:---------在某個區域里會返回多個單元格信息
cellForRowAtIndexPath:-------------通過單元格路徑得到單元格
visibleCells-----------返回所有可見的單元格
indexPathsForVisibleRows--------返回所有可見行的路徑
headerViewForSection:--------設置頭標簽的視圖
footerViewForSection;----------設置尾標簽的視圖
beginUpdates--------只添加或刪除才會更新行數
endUpdates---------添加或刪除后會調用添加或刪除方法時才會更新
insertSections:withRowAnimation:-----------插入一個或多個組,並使用動畫
insertRowsIndexPaths:withRowAnimation:-------插入一個或多個單元格,並使用動畫
deleteSections:withRowAnimation:--------刪除一個或多個組,並使用動畫
deleteRowIndexPaths:withRowAnimation:--------刪除一個或多個單元格,並使用動畫
reloadSections:withRowAnimation:---------更新一個或多個組,並使用動畫
reloadRowIndexPaths:withRowAnimation:-------------更新一個或多個單元格,並使用動畫
moveSection:toSection:-------------移動某個組到目標組位置
moveRowAtIndexPath:toIndexPath:-----------移動個某個單元格到目標單元格位置
indexPathsForSelectedRow----------返回選擇的一個單元格的路徑
indexPathsForSelectedRows---------返回選擇的所有的單元格的路徑
selectRowAtIndexPath:animation:scrollPosition---------設置選中某個區域內的單元格
deselectRowAtIndexPath:animation:----------取消選中的單元格
重用機制
dequeueReusableCellWithIdentifier:---------獲取重用隊列里的單元格
UITableViewDataSource代理方法:
方法:
numberOfSectionsInTableView:------------設置表格的組數
tableView:numberOfRowInSection:----------設置每個組有多少行
tableView:cellForRowAtIndexPath:---------設置單元格顯示的內容
tableView:titleForHeaderInSection:---------設置組表的頭標簽視圖
tableView:titleForFooterInSection:-----------設置組表的尾標簽視圖
tableView:canEditRowAtIndexPath:---------設置單元格是否可以編輯
tableView:canMoveRowAtIndexPath:--------設置單元格是否可以移動
tableView:sectionIndexTitleForTableView:atIndex:-------設置指定組的表的頭標簽文本
tableView:commitEditingStyle:forRowAtIndexPath:----------編輯單元格(添加,刪除)
tableView:moveRowAtIndexPath:toIndexPath-------單元格移動
UITableViewDelegate代理方法:
tableView: willDisplayCell: forRowAtIndexPath:-----------設置當前的單元格
tableView: heightForRowAtIndexPath:-----------設置每行的高度
tableView:tableView heightForHeaderInSection:-----------設置組表的頭標簽高度
tableView:tableView heightForFooterInSection:-------------設置組表的尾標簽高度
tableView: viewForHeaderInSection:----------自定義組表的頭標簽視圖
tableView: viewForFooterInSection: ----------自定義組表的尾標簽視圖
tableView: accessoryButtonTappedForRowWithIndexPath:-----------設置某個單元格上的右指向按鈕的響應方法
tableView: willSelectRowAtIndexPath:-----------獲取將要選擇的單元格的路徑
tableView: didSelectRowAtIndexPath:-----------獲取選中的單元格的響應事件
tableView: tableView willDeselectRowAtIndexPath:------------獲取將要未選中的單元格的路徑
tableView: didDeselectRowAtIndexPath:-----------獲取未選中的單元格響應事件
執行順序如下:
第一輪:
1、numberOfSectionsInTableView :假如section=2,此函數只執行一次,假如section=0,下面函數不執行,默認為1
2、heightForHeaderInSection ,執行兩次,此函數執行次數為section數目
3、heightForFooterInSection ,函數屬性同上,執行兩次
4、numberOfRowsInSection ,此方法執行一次
5、heightForHeaderInSection ,此方法執行了兩次
6、heightForFooterInSection ,此方法執行兩次
7、numberOfRowsInSection,執行一次
8、heightForRowAtIndexPath ,行高,先執行section=0,對應的row次數
第二輪:
1、numberOfSectionsInTableView ,一次
2、heightForHeaderInSection ,section次數
3、heightForFooterInSection ,section次數
4、numberOfRowsInSection ,一次
5、heightForHeaderInSection ,執行section次數
6、heightForFooterInSection,執行section次數
7、numberOfRowsInSection,執行一次
8、heightForRowAtIndexPath,行高,先執行一次
9、cellForRowAtIndexPath
