gpt4 book ai didi

iphone - 如何处理两个TableView

转载 作者:行者123 更新时间:2023-12-01 17:44:50 24 4
gpt4 key购买 nike

我在一个应用程序中有两个UITableView实例,问题是我不知道如何定义每个表需要显示的内容。这是代码:

。H :

{
NSArray *array1;
NSArray *array2;
IBOutlet UITableView *table1;
IBOutlet UITableView *table2;
}

.m:
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
return 1;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return [array1 count];
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
}

cell.textLabel.text = [array1 objectAtIndex:indexPath.row];
return cell;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{

UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
}

此代码仅适用于一个表。我不知道如何用array2设置另一个表。人们有什么想法吗?

最佳答案

您需要做的就是检查UITableView方法中要设置的delegate/datasource。尝试:

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView; {
if(tableView == table1){
return 1; // The number of sections in table1;
}
else if(tableView == table2){
return 1; // The number of sections in table2;
}
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section; {
if(tableView == table1){
return [array1 count];
}
else if(tableView == table2){
return [array2 count];
}
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath; {
static NSString *CellIdentifier = @"Cell";

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if(cell == nil){
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
}
if(tableView == table1){
cell.textLabel.text = [array1 objectAtIndex:indexPath.row];;
}
else if(tableView == table2){
cell.textLabel.text = [array2 objectAtIndex:indexPath.row];;
}
return cell;
}

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath; {
UITableViewCell * cell = [tableView cellForRowAtIndexPath:indexPath];
}

希望对您有所帮助!

关于iphone - 如何处理两个TableView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9318098/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com