如何从分组的UITableView单元格中删除边框?

时间:2013-04-07 23:16:06

标签: ios objective-c uiview uitableview

enter image description here

底部的小白条实际上抛弃了设计,我似乎无法弄清楚如何将其移除。

This问题的评分很高,据说可以做到这一点:

cell.backgroundView = [[[UIView alloc] initWithFrame:CGRectZero] autorelease];

但是它也从我的背景中删除了灰色(用setBackgroundColor:设置),所以它也不起作用。

2 个答案:

答案 0 :(得分:7)

将此添加到您的viewDidLoad:以删除表格边框:

self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;

我没有很好地理解你的问题,但我建议你检查你的细胞背景视图的高度,就像测试把图像作为细胞背景视图并检查白线是否仍然存在:

cell.backgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"imageName.png"]]autorelease];

// -----

您提供的代码无效,因为您正在创建一个新的空白UIView并将其设置为单元格背景!正确的方法如下:

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{

    static NSString *CellIdentifier = @"ApplicationCell";

    UITableViewCell *cell = (UITableViewCell *)[self.tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    if (cell == nil) {

        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];

        UIView *myBackgroundView = [[UIView alloc] init];
        myBackgroundView.frame = cell.frame;
        myBackgroundView.backgroundColor = [UIColor greenColor]; <== DESIRED COLOR

        cell.backgroundView = myBackgroundView;

    }

    return cell;

}

答案 1 :(得分:1)

试试吧

self.tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine;