我正在动态更改标签的背景颜色,单元格的宽度似乎是静态的,仅在6s的情况下正常工作,背景颜色会消失显示尺寸增加
cell.container.layer.backgroundColor = GetColor().randomColor(indexPath.row).colorWithAlphaComponent(0.5).CGColor
cell.title.layer.backgroundColor = GetColor().randomColor(indexPath.row).colorWithAlphaComponent(0.8).CGColor
新代码//更改不透明度后
// cell.container.layer.backgroundColor = UIColor.blackColor()。colorWithAlphaComponent(0.85).CGColor cell.title.backgroundColor = GetColor()。randomColor(indexPath.row).colorWithAlphaComponent(0.5)
答案 0 :(得分:1)
Mohit Arya,
我相信你已经在单元格内的标签上应用了Autolayout约束:)如果是,请验证它是否与我在下面显示的相同,如果不是,请正确添加自动布局限制,
当您设置标签本身的颜色并希望它覆盖整个单元格设置时,所有四个约束都必须为0
修改强>
现在根据您的评论,如果约束与我在下面给出的相同,那么您的标签必须覆盖整个单元格:)
然后你所要做的就是
[cell.label setBackgroundColor: GetColor().randomColor(indexPath.row).colorWithAlphaComponent(1.0)]
cell.label.opaque = YES;
答案 1 :(得分:0)
检查单元格视图层次结构中所有视图的背景颜色(和背景颜色alpha值)。例如,如果您的单元格的contentView具有alpha<的背景颜色,则会出现这样的问题。 1,您的标签(尺寸不适合contentView)具有相同的背景颜色。这就是你提供的所有信息。
因此,使用不同的颜色,或使用alpha = 1,或在标签中使用清晰的颜色。
答案 2 :(得分:0)
我找到了解决方案..以下代码干扰了用户界面,我仍然不知道为什么container.bounds没有返回实际宽度
container.layer.shadowColor = UIColor.lightGrayColor().CGColor
container.layer.shadowOpacity = 1
container.layer.shadowOffset = CGSizeMake(0, 1);
container.layer.shadowRadius = 2
container.layer.shadowPath = UIBezierPath(rect: container.bounds).CGPath