如何移除右侧的UILabel灰色边框?

问题描述:

我已将UILabel添加到自定义单元格的contentView。我遇到了一个奇怪的副作用。在右边界有灰色边缘。我不知道为什么。我只是添加了一个普通的UILabel,我什么也没做。如何移除右侧的UILabel灰色边框?

UILabel *label = [[UILabel alloc] initWithFrame:CGRectZero]; 
label.text = @"value1"; 
label.textAlignment = UITextAlignmentCenter; 
[self.contentView addSubview:label]; 

- (void)layoutSubviews 
{ 
    UILabel *label = [self.contentView.subviews objectAtIndex:i]; 
    label.frame = CGRectMake(…); 
} 

enter image description here

我不知道原因,但解决的办法是摆脱灰色边缘设置单元格clearColor的背景色。

label.backgroundColor = [UIColor clearColor];

+0

设置标签颜色一样清晰的意志降低性能。 – Intentss

我知道这是一个老问题,但我刚刚遇到了这个完全相同的问题,所以我想我可以帮助其他人看。

对我来说,问题是我的帧中有浮动数字。下面的固定对我来说:

CGRectIntegral(myLabel.frame) 
+1

感谢您的浮动提示。我不想改变帧大小,所以我在UILabel下面创建了一个'UIView'。然后,我更改了'UIView'上的'backgroundColor'并保留了'UILabel'' clearColor' – Jon

+0

谢谢!我在UIPageViewController中遇到了与UILabels相同的问题。 – DivideByZer0

+0

首选此+1 – Kjuly

首先,你需要设置:

[label setBackgroundColor:[UIColor clearColor]]; 

接下来,您要设置颜色:

[label layer] setBackgroundColor:[UIColor redColor].CGColor];