iPhone應(yīng)用開(kāi)發(fā) UITableView學(xué)習(xí)點(diǎn)滴詳解
作者:佚名 
  本文介紹的是iPhone應(yīng)用開(kāi)發(fā) UITableView學(xué)習(xí)點(diǎn)滴詳解,主要以代碼實(shí)現(xiàn),我們來(lái)看詳細(xì)內(nèi)容。
 iPhone應(yīng)用開(kāi)發(fā) UITableView學(xué)習(xí)點(diǎn)滴詳解是本文要介紹的內(nèi)容,內(nèi)容不多,主要是以代碼實(shí)現(xiàn)UITableView的學(xué)習(xí)點(diǎn)滴,我們來(lái)看內(nèi)容。
-、建立 UITableView
- DataTable = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, 320, 420)];
 - [DataTable setDelegate:self];
 - [DataTable setDataSource:self];
 - [self.view addSubview:DataTable];
 - [DataTable release];
 
二、UITableView各Method說(shuō)明
- //Section總數(shù)
 - - (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView{
 - return TitleData;
 - }
 - // Section Titles
 - //每個(gè)section顯示的標(biāo)題
 - - (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section{
 - return @"";
 - }
 - //指定有多少個(gè)分區(qū)(Section),默認(rèn)為1
 - - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
 - return 4;
 - }
 - //指定每個(gè)分區(qū)中有多少行,默認(rèn)為1
 - - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
 - }
 - //繪制Cell
 - -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
 - static NSString *SimpleTableIdentifier = @"SimpleTableIdentifier";
 - UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:
 - SimpleTableIdentifier];
 - if (cell == nil) {
 - cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault
 - reuseIdentifier: SimpleTableIdentifier] autorelease];
 - }
 - cell.imageView.image=image;//未選cell時(shí)的圖片
 - cell.imageView.highlightedImage=highlightImage;//選中cell后的圖片
 - cell.text=//.....
 - return cell;
 - }
 - //行縮進(jìn)
 - -(NSInteger)tableView:(UITableView *)tableView indentationLevelForRowAtIndexPath:(NSIndexPath *)indexPath{
 - NSUInteger row = [indexPath row];
 - return row;
 - }
 - //改變行的高度
 - - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
 - return 40;
 - }
 - //定位
 - [TopicsTable setContentOffset:CGPointMake(0, promiseNum * 44 + Chapter * 20)];
 - //返回當(dāng)前所選cell
 - NSIndexPath *ip = [NSIndexPath indexPathForRow:row inSection:section];
 - [TopicsTable selectRowAtIndexPath:ip animated:YES scrollPosition:UITableViewScrollPositionNone];
 - [tableView setSeparatorStyle:UITableViewCellSelectionStyleNone];
 - //選中Cell響應(yīng)事件
 - - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
 - [tableView deselectRowAtIndexPath:indexPath animated:YES];//選中后的反顯顏色即刻消失
 - }
 - //判斷選中的行(阻止選中***行)
 - -(NSIndexPath *)tableView:(UITableView *)tableView willSelectRowAtIndexPath:(NSIndexPath *)indexPath
 - {
 - NSUInteger row = [indexPath row];
 - if (row == 0)
 - return nil;
 - return indexPath;
 - }
 - //劃動(dòng)cell是否出現(xiàn)del按鈕
 - - (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath {
 - }
 - //編輯狀態(tài)
 - - (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle
 - forRowAtIndexPath:(NSIndexPath *)indexPath
 - {
 - }
 - [topicsTable setContentSize:CGSizeMake(0,controller.promiseNum * 44)];
 - //右側(cè)添加一個(gè)索引表
 - - (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView{
 - }
 - //返回Section標(biāo)題內(nèi)容
 - - (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section{
 - }
 - //自定義劃動(dòng)時(shí)del按鈕內(nèi)容
 - - (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 {
 - static NSString *CellIdentifier = @"Cell";
 - UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
 - if (cell == nil) {
 - cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:CellIdentifier] autorelease];
 - UILabel *Datalabel = [[UILabel alloc] initWithFrame:CGRectMake(10, 0, 320, 44)];
 - [Datalabel setTag:100];
 - Datalabel.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
 - [cell.contentView addSubview:Datalabel];
 - [Datalabel release];
 - }
 - 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時(shí)的顏色
 - typedef enum {
 - UITableViewCellSelectionStyleNone,
 - UITableViewCellSelectionStyleBlue,
 - UITableViewCellSelectionStyleGray
 - } UITableViewCellSelectionStyle
 - //cell右邊按鈕格式
 - typedef enum {
 - UITableViewCellAccessoryNone, // don't show any accessory view
 - UITableViewCellAccessoryDisclosureIndicator, // regular chevron. doesn't track
 - UITableViewCellAccessoryDetailDisclosureButton, // blue button w/ chevron. tracks
 - UITableViewCellAccessoryCheckmark // checkmark. doesn't track
 - } UITableViewCellAccessoryType
 - //是否加換行線
 - typedef enum {
 - UITableViewCellSeparatorStyleNone,
 - UITableViewCellSeparatorStyleSingleLine
 - } UITableViewCellSeparatorStyle//改變換行線顏色
 - tableView.separatorColor = [UIColor blueColor];
 
小結(jié):iPhone應(yīng)用開(kāi)發(fā) UITableView學(xué)習(xí)點(diǎn)滴詳解的內(nèi)容介紹完了,希望本文對(duì)你有所幫助!
責(zé)任編輯:zhaolei 
                    來(lái)源:
                    互聯(lián)網(wǎng)
 














 
 
 
 
 
 
 