如何在表视图中隐藏行。隐藏索引后不应该更改iOS

时间:2015-03-02 15:37:40

标签: ios objective-c nsarray tableview tableviewcell

我有这样的数组:

array = (@"",@"Cricket",@"Planet",@"Football",@"",@"",@"HelloWorld").

我在表格视图中显示。它还显示具有空对象的所有对象。我想隐藏或隐藏空行。

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath: (NSIndexPath *)indexPath                                       
 {       
 UITableViewCell* cell = [super tableView:tableView cellForRowAtIndexPath:indexPath];        
 if([array objectisIdenticalto:@""])
{
   return 0;
}else
{
   return 30;
}

我需要索引与值相同。我需要相同的索引路径,而不是在tableview中显示空值。我的英语很差,请合作并帮助解决。

2 个答案:

答案 0 :(得分:1)

您正在检查您的数组是否等于@""但是你想在那个索引处检查数组中的对象。

尝试:

...
if ([array[indexPath.row] isEqualToString:@""]) {
    return 0;
}
...

答案 1 :(得分:0)

我从你那里得到的问题是你希望能够在tableview中隐藏和隐藏一些行。我也许可以帮忙解决这个问题。

对于任何null行,您需要为heightForRowAtIndexPath传递一个0的单元格高度。您的代码可能最终看起来像这样......

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath: (NSIndexPath *)indexPath

    float defaultHeightForRow = 30;

    YourCustomCell *cell = (YourCustomCell *) [tableview cellForRowAtIndexPath:indexpath];

    if(cell.tag==3)
        return 0;
    else
        return defaultHeightForRow;

这应该将任何空行设置为高度0(这实际上会隐藏行),并将行的其余高度设置为您指定为默认高度的30。

希望这会对你有所帮助。欢呼声。