在方法中
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
通常你使用一个数组来设置
[cell.textLabel setTex:@"row"];
但是如果我想跳一排呢?
例如在 indexpath.row 我不想在我的表格视图中有这个单元格,可能吗?
在方法中
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
通常你使用一个数组来设置
[cell.textLabel setTex:@"row"];
但是如果我想跳一排呢?
例如在 indexpath.row 我不想在我的表格视图中有这个单元格,可能吗?
试试这个:合并行高的 tableView 数据源方法。
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.row == NUMBER_TO_AVOID) {
return 0.0f;
}
return 44.0f; //standard cell height
}
我已经在几个类似的情况下这样做了。您要做的是创建第二个数组“activeItems”。或类似的东西。遍历您的主数据数组并使用有效项目构建活动数组。而不是让您的数据源引用此数组。这为您提供了一个准确索引到您的表的数组。
您可以在 cellForRowAtIndexPath 中放置一个条件。尝试这个:
data = [array objectAtIndex:indexPath.row];
If (data != nil){
[cell.textLabel setText:data];
}
else{
// code that handles data if null
}