gpt4 book ai didi

ios - 在 UITableView 和 NSArray 中使用多节

转载 作者:行者123 更新时间:2023-11-28 20:08:39 24 4
gpt4 key购买 nike

我需要在 UITableView 中有 61 个部分,这意味着我必须有 61 个 NSArray,对吗?!

首先我定义了 61 个 NSArray,然后在 View 中初始化加载

这段代码用起来很累

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
// Return the number of rows in the section.

switch (section) {
case 0:
return [searchArray_1 count];
break;
case 1:
return [searchArray_2 count];
break;
case 2:
return [searchArray_3 count];
break;
case 3:
return [searchArray_4 count];
break;
...
case 60:
return [searchArray_61 count];
break;
}
return 1;
}

配置单元格中的这段代码

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [self.myTable dequeueReusableCellWithIdentifier:CellIdentifier];

switch (indexPath.section) {
case 0:
cell.textLabel.text = [searchArray_1 objectAtIndex:indexPath.row];
break;
case 1:
cell.textLabel.text = [searchArray_2 objectAtIndex:indexPath.row];
break;
case 2:
cell.textLabel.text = [searchArray_3 objectAtIndex:indexPath.row];
break;
...
case 60:
cell.textLabel.text = [searchArray_61 objectAtIndex:indexPath.row];
break;

default:
break;
}

return cell;
}

它工作正常,但我怎样才能减少数组

最佳答案

你需要另一个数组。

NSArray * sectionArray = @[searchArray_1, searchArray_2, ...., searchArray_61] ;

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
// Return the number of rows in the section.
NSArray * array = sectionArray[section] ;
return [array count] ;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [self.myTable dequeueReusableCellWithIdentifier:CellIdentifier];
NSArray * array = sectionArray[indexPath.section] ;
cell.textLabel.text = array[indexPath.row] ;
return cell;
}

关于ios - 在 UITableView 和 NSArray 中使用多节,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21132459/

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