UITableView 詳細講解

2021-06-05 03:53:55 字數 3391 閱讀 4182

-、建立 uitableview

datatable = [[uitableview alloc] initwithframe:cgrectmake(0, 0, 320, 420)];

[datatable setdelegate:self];

[datatable setdatasource:self];

[self.view addsubview:datatable];

[datatable release];

二、uitableview各method說明

//section總數

- (nsarray *)sectionindextitlesfortableview:(uitableview *)tableview

// section titles

//每個section顯示的標題

- (nsstring *)tableview:(uitableview *)tableview titleforheaderinsection:(nsinteger)section

//指定有多少個分割槽(section),預設為1

- (nsinteger)numberofsectionsintableview:(uitableview *)tableview

//指定每個分割槽中有多少行,預設為1

- (nsinteger)tableview:(uitableview *)tableview numberofrowsinsection:(nsinteger)section

//繪製cell

-(uitableviewcell *)tableview:(uitableview *)tableview cellforrowatindexpath:(nsindexpath *)indexpath

cell.imageview.image=image;//未選cell時的

cell.imageview.highlightedimage=highlightimage;//選中cell後的

cell.text=//.....

return cell;

}//行縮排

-(nsinteger)tableview:(uitableview *)tableview indentationlevelforrowatindexpath:(nsindexpath *)indexpath

//改變行的高度

- (cgfloat)tableview:(uitableview *)tableview heightforrowatindexpath:(nsindexpath *)indexpath

//定位

[topicstable setcontentoffset:cgpointmake(0, promisenum * 44 + chapter * 20)];

//返回當前所選cell

nsindexpath *ip = [nsindexpath indexpathforrow:row insection:section];

[topicstable selectrowatindexpath:ip animated:yes scrollposition:uitableviewscrollpositionnone];

[tableview setseparatorstyle:uitableviewcellselectionstylenone];

//選中cell響應事件

- (void)tableview:(uitableview *)tableview didselectrowatindexpath:(nsindexpath *)indexpath

//判斷選中的行(阻止選中第一行)

-(nsindexpath *)tableview:(uitableview *)tableview willselectrowatindexpath:(nsindexpath *)indexpath

//划動cell是否出現del按鈕

- (bool)tableview:(uitableview *)tableview caneditrowatindexpath:(nsindexpath *)indexpath

//編輯狀態

- (void)tableview:(uitableview *)tableview commiteditingstyle:(uitableviewcelleditingstyle)editingstyle

forrowatindexpath:(nsindexpath *)indexpath

//返回section標題內容

- (nsstring *)tableview:(uitableview *)tableview titleforheaderinsection:(nsinteger)section

//自定義划動時del按鈕內容

- (nsstring *)tableview:(uitableview *)tableview

titlefordeleteconfirmationbuttonforrowatindexpath:(nsindexpath *)indexpath

//跳到指的row or section

[tableview scrolltorowatindexpath:[nsindexpath indexpathforrow:0 insection:0] atscrollposition:uitableviewscrollpositionbottom animated:no];

三、在uitableviewcell上建立uilable多行顯示

- (uitableviewcell *)tableview:(uitableview *)tableview cellforrowatindexpath:(nsindexpath *)indexpath  

uilabel *datalabel = (uilabel *)[cell.contentview viewwithtag:100];

[datalabel setfont:[uifont boldsystemfontofsize:18]];

datalabel.text = [data.dataarray objectatindex:indexpath.row];

cell.accessorytype = uitableviewcellaccessorydisclosureindicator;

return cell;

}//選中cell時的顏色

typedef enum uitableviewcellselectionstyle

//cell右邊按鈕格式

typedef enum uitableviewcellaccessorytype

//是否加換行線

typedef enum uitableviewcellseparatorstyle

//改變換行線顏色

tableview.separatorcolor = [uicolor bluecolor];

UITableView 詳細講解

建立 uitableview datatable uitableview alloc initwithframe cgrectmake 0,0,320,420 datatable setdelegate self datatable setdatasource self self.view adds...

UITableView 詳細講解

ios開發qq群 204161656 建立 uitableview datatable uitableview alloc initwithframe cgrectmake 0,0,320,420 datatable setdelegate self datatable setdatasource ...

UITableView 詳細講解

建立 uitableview datatable uitableview alloc initwithframe cgrectmake 0,0,320,420 datatable setdelegate self datatable setdatasource self self.view adds...