如何以允许用户选择单元格背景颜色的方式在UITableViewCell上获得圆角?(但不使用GROUPED模式)

Gre*_*reg 7 iphone rounded-corners uitableview ios

有没有办法在UITableViewCell上获得圆角,方式如下:

  1. 允许在运行时用户选择/自定义单元格背景颜色(单元格可能不是全部具有相同的背景颜色)
  2. 不使用UITableView"GROUPED"模式

所以我假设这意味着我不能在这里使用正常的图像方法来获得圆形边缘,因为在这种情况下它不允许上面的要求1

Mat*_*ham 55

好吧,听起来你应该尝试使用CALayer.由于UITableViewCell是UIView子类,因此您可以操纵其CALayer属性.

所以,首先,确保 #import <QuartzCore/QuartzCore.h>

然后做一些事情,例如,

[cell.layer setCornerRadius:7.0f];
[cell.layer setMasksToBounds:YES];
[cell.layer setBorderWidth:2.0f];
Run Code Online (Sandbox Code Playgroud)

当你创建单元格时.(如果您尝试创建类似于分组表的效果,我想您将只想操作第一个和最后一个单元格.)这应该给单元格圆角.通过操纵CALayer,您可以创建所需的效果.

另外,请查看此答案,了解如何仅对某些角落执行此操作.