UITableViewCell 曲线异常-左侧。这是啥原因造成的?包含图片
Posted
技术标签:
【中文标题】UITableViewCell 曲线异常-左侧。这是啥原因造成的?包含图片【英文标题】:UITableViewCell curve line anomaly- left side. What's causing this? Image includedUITableViewCell 曲线异常-左侧。这是什么原因造成的?包含图片 【发布时间】:2012-04-08 17:15:32 【问题描述】:我在这个表格视图中每个单元格的左上角绘制了一个奇怪的半圆。我似乎无法摆脱它。我没有在我的单元格中进行任何自定义绘图,尽管这些单元格都是 UITableViewCell 的子类。
弯曲的工件仅出现在每个部分的第一个单元格中,并且无论表格视图背景如何,它仍然是持久的。
这是单元格中的所有自定义代码,其余在IB中
- (void)layoutSubviews
// NSLog(@"DataEntryCell layoutSubviews");
UILabel *topLabel = [self parameterLabel];
UILabel *bottomLabel = [self dataLabel];
topLabel.font = [UIFont boldSystemFontOfSize:18.0];
topLabel.textAlignment = UITextAlignmentCenter;
topLabel.textColor = [UIColor darkGrayColor];
topLabel.shadowColor = [UIColor lightGrayColor];
topLabel.shadowOffset = CGSizeMake(0.0, 1.0);
bottomLabel.font = [UIFont systemFontOfSize:16.0];
bottomLabel.textAlignment = UITextAlignmentLeft;
bottomLabel.textColor = [UIColor darkGrayColor];
bottomLabel.numberOfLines = 0;
bottomLabel.lineBreakMode = UILineBreakModeWordWrap;
self.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
self.selectionStyle = UITableViewCellSelectionStyleGray;
self.autoresizesSubviews = YES;
知道是什么原因造成的吗?
谢谢
【问题讨论】:
你需要分享一些代码或更多关于你到目前为止所做的事情的信息 您的表格有“分组”样式吗?如果是这样 - 如果您将其设置为“普通”,您仍然有同样的问题吗?在分组样式表视图中,单元格的内容视图从侧面缩小(或覆盖)。这可能是问题所在。我也认为如果你有一个三行的表,只有顶部和底部的会有这种异常。 是的,它使用分组样式。只有顶层单元格有这个。但它是什么,我怎样才能摆脱它? 这可能是绘图故障。你用标准条纹背景得到它吗? 刚刚检查过,是的,我仍然使用默认背景。 【参考方案1】:我在layoutSubviews
中看不到任何真正属于那里的东西。标签上的所有这些属性都应在创建标签时设置。 self 的属性也是如此。 selectionStyle
似乎特别可疑,因为它提到了灰色,而你有一条杂散的灰线。当layoutSubviews
被调用时,设置autoresizesSubviews
已经太晚了;自动调整大小在您收到 layoutSubviews
之前发生。
如果您是从 nib 加载单元格(及其子视图),或者使用创建和添加子视图的代码,请尝试将这些内容放在更接近单元格初始化的位置 - awakeFromNib
。
【讨论】:
这解决了问题,非常感谢!这段代码是一年多前写的,我现在正在更新它。不敢相信我错过了这个。以上是关于UITableViewCell 曲线异常-左侧。这是啥原因造成的?包含图片的主要内容,如果未能解决你的问题,请参考以下文章