溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

TableviewController基礎(chǔ)

發(fā)布時間:2020-07-22 19:36:30 來源:網(wǎng)絡(luò) 閱讀:374 作者:cnliujie1988 欄目:開發(fā)技術(shù)

表示圖是顯示表數(shù)據(jù)的試圖對象,它是UITableView類的一個實(shí)例。表中的每個課件的行都是UITableViewCell類實(shí)現(xiàn)。因此,表示圖是顯示表中可見部分對象,表試圖單元負(fù)責(zé)顯示表中的一行。

表示圖并不負(fù)責(zé)存儲表中的數(shù)據(jù)。他們只存儲足夠繪制當(dāng)前可見行的數(shù)據(jù)。表示圖從遵循UITableViewLegate協(xié)議的對象獲取配置數(shù)據(jù),從遵循UITableViewDataSource協(xié)議的對象獲得行數(shù)據(jù)。

表示圖分為兩種基本樣式。一種是分組表。另一類是索引表。表中的每個部分被稱為數(shù)據(jù)源中的分區(qū)(section)。

實(shí)現(xiàn)一個簡單的表

1、打開程序創(chuàng)建一個Simple_TableViewController的項目,單擊大打開  Simple_TableViewController.xib,View窗口應(yīng)該已經(jīng)打開,因此,在庫中找到TableView,并將它拖到View窗口中即可。

2、將TableView關(guān)聯(lián)到文件,只需連接到File‘s Owner 。這樣控制器類就成了此表的數(shù)據(jù)源和委托。  

3、打開Simple_TableViewController.h,添加下面代碼

#import <UIKit/UIKit.h>

@interface Simple_TableViewController:UIViewController<UITableViewDelegate,UITableViewDataSource>

{

NSArray *listData;

}  

@property(nonatomic,retain) NSArray *listData;

@end

 

 

4、在Simple_TableViewController.m里添加。頭文件不寫了。

@synthesize listData;

-(void)viewDidLoad{

NSArray *array=[[NSArray alloc]initWithObjects:@"dsda",@"erwerwe",@"dsada",nil];

self.listData=array;

[array release];

[super viewDidLoad];

 

//自動生成的代碼我急不寫了

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{

return [self.listData count];

}

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{

static NSString * SimpleTableIdentifier= @"simpleTableIdentifier";

UITableViewCell *cell=[tableView dequeueReusableCellWithIdentifiter:SimpleTableIdentifier];

if(cell==nil){

cell=[[UITableViewCell alloc]initWithFrame:CGRectZero reuseIdentifier:SimpleTableIdentifier] autorelease];

}

NSUInterger row=[indexPath row];

cell.text=[listData objectAtIndex:row];

return cell;

}

 

}

 

第一個方法是tableView:
numberOfRowsInSection:,表使用它來查看指定分區(qū)中有多少行。正如你所希望的,默認(rèn)的分區(qū)
數(shù)量為1,此方法用于返回組成列表的表分區(qū)中的行數(shù)。只需返回數(shù)組中數(shù)組項的數(shù)量即可。

 

下一個方法可能需要一些解釋,讓我們更仔細(xì)地看一下此方法:

當(dāng)表視圖需要繪制其中一行時,則會調(diào)用此方法。你會注意到此方法的第二個參數(shù)是一個
NSIndexPath實(shí)例。表視圖正是使用此機(jī)制把分區(qū)和行綁定到一個對象中的。要從NSIndexPath中
獲得一行或一個分區(qū),只需要調(diào)用行方法或分區(qū)方法就可以了,這兩個方法都返回一個int值。

      

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI