在分组的uitableview的单元格下的阴影

时间:2013-04-13 10:37:26

标签: ios objective-c uitableview

我有UITableView

  • style - >分组
  • 分隔符 - > signle line蚀刻清晰的颜色

截图

enter image description here

这没关系,但我想在细胞下改变'阴影'的颜色。我想我已经尝试了所有的背景颜色,色彩,阴影颜色等等,什么都没有...有人能帮帮我吗?

2 个答案:

答案 0 :(得分:3)

好的,我找到了解决方案。 我已将分隔符样式更改为无,并为每个单元格的图层添加阴影

cell.layer.shadowColor = [[UIColor redColor] CGColor];
cell.layer.shadowOpacity = 1.0;
cell.layer.shadowRadius = 0;
cell.layer.shadowOffset = CGSizeMake(0.0, 1.0);

答案 1 :(得分:0)

您可以对您正在使用的UITableViewCell进行子类化,并以您想要的任何方式对其进行自定义。然后,当您实施tableView:cellForRowAtIndexPath:方法时,您只需将单元格设置为您自定义的单元格之一:

static NSString *CellIdentifier = @"ExampleCell";
MyCustomTableViewCell *cell = (MyCustomTableViewCell*)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
  cell = [[MyCustomTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
 }
return cell;

然后在MyCustomTableViewCell.m文件中自定义单元格的示例:

- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {
    if ((self = [super initWithStyle:style reuseIdentifier:reuseIdentifier])) {


    self.clipsToBounds = YES;

    UIView* bgView = [[UIView alloc] init];
    bgView.backgroundColor = [UIColor colorWithWhite:0.f alpha:0.25f];
    self.selectedBackgroundView = bgView;

    self.textLabel.font = [UIFont boldSystemFontOfSize:[UIFont systemFontSize]];
    self.textLabel.shadowOffset = CGSizeMake(0, 2);
    self.textLabel.shadowColor = [UIColor colorWithWhite:0 alpha:0.25];

    UIView *topLine = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 200, 1)];
    topLine.backgroundColor = [UIColor colorWithWhite:0.5 alpha:0.25];
    [self.textLabel.superview addSubview:topLine];

    UIView *bottomLine = [[UIView alloc] initWithFrame:CGRectMake(0, 43, 200, 1)];
    bottomLine.backgroundColor = [UIColor colorWithWhite:0 alpha:0.25];
    [self.textLabel.superview addSubview:bottomLine];

  }
  return self;
}

这样看起来像是:this。对于狭窄的图像感到抱歉,但我没有时间重做整个东西来获得一个宽广的单元格。