不需要的Tablecells显示

时间:2012-11-15 04:33:21

标签: iphone xcode tablecell

我正在尝试删除这些我不使用但不知道如何使用的表格。我已经指定了我想要多少个单元格,但这些不需要的单元格会一直显示,就像这样;

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
 return 3;
}

enter image description here

任何人都知道如何解决这个问题?提前谢谢

- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section {
if ([self numberOfSectionsInTableView:tableView] == (section+1))
{
    return [UIView new];
}
return nil;

但无济于事,因为我得到了一个sigabrt错误..为什么?

6 个答案:

答案 0 :(得分:1)

我个人用以下方法解决了这个问题:

- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section {
    return 0.1;
}

而不是viewForFooterInSection:

答案 1 :(得分:0)

试试这个

 - (void) addFooter
 {
UIView *v = [[UIView alloc] initWithFrame:CGRectZero];

[self.myTableView setTableFooterView:v];

[v release];
}

您可以尝试

中的不同选项

Eliminate extra separators below UITableView

答案 2 :(得分:0)

您有两种选择。

  1. 将tableView样式设置为GroupedUITableViewStyleGrouped
  2. tableViewHeight/number of cells方法返回单元格高度heightForRowAtIndexPath:

    - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
     {
       int tableViewHeght = 720;
        return tableViewHeght * 3;
     }
    

答案 3 :(得分:0)

你也可以这样做

1.创建一个UITableCell类并将该类附加到UITableView。 2.您的UITableView属性更改BackGroundColour是ClearColour

然后你可以运行And Show

供您参考,您也可以使用BackGround图像

答案 4 :(得分:0)

我已经看到了使用页眉/页脚或尝试使用分组表视图的答案,一切看起来都很好,也是更清洁的解决方案。但我宁愿选择另一个。将表视图分隔符样式指定为none。在cellForRowAtIndexPath方法中声明一个UIImageView实例。制作高度为1px,宽度为320px的图像,将其设置为图像视图的图像,并将其添加为单元格的子视图,y位置为单元格的高度。请记得自动释放图像视图实例。由于完成了自动释放,因此不存在任何内存问题,您也可以决定在哪些单元格中显示它,从而使其更加灵活。

答案 5 :(得分:-1)

我能够在我的代码中解决这个问题;

 - (float)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section {
// This will create a "invisible" footer
return 0.01f;
 }

希望这有助于某人,和平!