Ios 创建具有自定义选择颜色和边框的分组UITableviewCell

Ios 创建具有自定义选择颜色和边框的分组UITableviewCell,ios,ios5,uitableview,Ios,Ios5,Uitableview,我目前正在编写一个应用程序,它在分组表视图中使用不同的选择颜色。就边界而言,这非常有效。 我可以使用本文中的代码更改选择颜色: 但是我想在苹果使用的电池周围加上漂亮的边框。我如何使用这个边界 这是创建背景的代码-大部分是从上面的文章中复制的: 我就是这样使用它的: NSIndexPath * indexPath = [[[NSIndexPath alloc] initWithIndex:0] indexPathByAddingIndex:1]; CGRect frame = [[self

我目前正在编写一个应用程序,它在分组表视图中使用不同的选择颜色。就边界而言,这非常有效。 我可以使用本文中的代码更改选择颜色:

但是我想在苹果使用的电池周围加上漂亮的边框。我如何使用这个边界

这是创建背景的代码-大部分是从上面的文章中复制的:

我就是这样使用它的:

NSIndexPath * indexPath = [[[NSIndexPath alloc] initWithIndex:0] indexPathByAddingIndex:1];
CGRect frame = [[self tableView] rectForRowAtIndexPath:indexPath];
TLCustomCellBackgroundView * selectedBackgroundView = [[TLCustomCellBackgroundView alloc] initWithFrame:frame andColor:[UIColor redColor]];
[selectedBackgroundView setPosition:CustomCellBackgroundViewPositionBottom];
[[[self tableView] cellForRowAtIndexPath:indexPath] setSelectedBackgroundView:selectedBackgroundView];

正如您所见,除了第二个单元格周围的灰色边框外,我几乎使其正常工作。

在cellForRowAtIndexPath中,您可以为每一行/每一节设置边框(分隔符)

 if(indexPath.row == 1)
    [tableView setSeparatorColor:[UIColor redColor]];

 if(indexPath.section == 2)
    [tableView setSeparatorColor:[UIColor greenColor]];
只需记住为您想要的每一行/每一节设置/重置该值

如果你想在红细胞周围加上灰色的边框

if(indexPath.section == 0 && indexPath.row == 1){
//assuming this is the correct index)  
   [tableView.separatorColor = [UIColor  colorWithRed:0.67 green:0.67 blue:0.67 alpha:1];
}
else
{
   [tableView.separatorColor = [UIColor yourChosenDefaultColor]];
}

实际上,您需要在cellForRowAtIndexPath中使用它,或者您要为整个TableView设置边框(也许这就是您想要做的)

我找到了一个解决方案。这并不完全相同(分组样式的UITableviewCell在iOS5中得到了更复杂的设计,但这对我来说已经足够了

而且效果很好

我使用的代码是:


希望这对其他人有帮助

我想这是用于普通的TableView,但不是用于分组样式的TableViewCells..不幸的是,这不起作用…我在分组的TableView中使用了相同的方法。显示一些代码,我将尝试帮助您。然后我会丢失一些其他内容…我上载了代码。谢谢您的帮助谢谢!正如您在中看到的一样关于我的问题的评论我设法画出了这个边界。我不确定你的解决方案是否有效,因为我正在更改背景视图,快速尝试并没有改变任何东西。尽管如此,感谢你的回答。不幸的是,你是对的-自从我上传它们以来,已经有相当一段时间了……不幸的是,我再也没有这些解决方案了。我切换了他使用完全定制设计的图像的新方法,并使用UITableviewcell的setBackgroundView功能来设置视图!