我有一个UILabel我想在顶部和底部添加空间的地方.在约束中使用最小高度我将其修改为:

编辑:要做到这一点,我用过:
  override func drawTextInRect(rect: CGRect) {
        var insets: UIEdgeInsets = UIEdgeInsets(top: 0.0, left: 10.0, bottom: 0.0, right: 10.0)
        super.drawTextInRect(UIEdgeInsetsInsetRect(rect, insets))
    } 
但我要找到一种不同的方法,因为如果我写两行以上的问题是相同的:

我需要创建一个UILabel背景颜色,我想添加一些左边填充,但我在这里找到的每个解决方案似乎都是一个讨厌的黑客.
从iOS 5开始实现这一目标的"标准"方法是什么?
编辑
用于说明我的场景的屏幕截图.-

我正在构建一个扫描条形码的屏幕,我需要在其后面放一个半透明屏幕,UILabels以提高对浅色背景的可见度.
这是屏幕现在的样子:

我正在设置背景颜色UILabel以获得半透明的盒子.我还创建了一个自定义UILabel子类,允许我UILabel使用这种方法在文本的边缘和文本之间设置一些填充.
正如您在上面的屏幕中看到的UILabel那样,未正确调整大小以将填充考虑在内."填充"只是将文本移动而不更改标签的宽度,导致文本截断.
这两个标签都包含任意长度的文本,我真的需要UILabel动态调整大小.
我UILabel可以覆盖哪种方法来增加标签的宽度和填充因子?
我有一个CGRect,我想调整它UIEdgeInsets.
似乎可能有一个内置函数可以做到这一点.我已经找了一个CGRectAdjustByInsets或带有其他CGRect…前缀的函数,但我没有找到任何东西.
我应该自己编码吗?
分组的UITableView在视图边缘和表格单元格之间放置一个边距.令人讨厌(对我来说)这个边距是视图宽度的一些功能.
在我的应用程序中,我有两个不同宽度的UITableViews,我希望对齐细胞边缘.
有可能获得这个保证金吗?或者更好的是可以设置这个保证金?
欢呼, - 本
我知道这是一个菜鸟问题,但是...我在桌面视图上有这些标签,但文字完全被压到了左边.我想添加一些填充.我该怎么办呢?
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section  {
    UIView* customView = [[[UIView alloc] initWithFrame:CGRectMake(10,0,300,60)] autorelease];
    UILabel *headerLabel = [[[UILabel alloc] initWithFrame:CGRectZero] autorelease];
    headerLabel.backgroundColor = [UIColor colorWithHexString:[[_months objectAtIndex:section] objectForKey:@"color"]];
    headerLabel.font = [UIFont boldSystemFontOfSize:18];
    headerLabel.frame = CGRectMake(0,0,400,30);
    headerLabel.text =  [[_months objectAtIndex:section] objectForKey:@"name"];
    headerLabel.textColor = [UIColor whiteColor];
    [customView addSubview:headerLabel];
    return customView;
}
任何帮助深表感谢!谢谢!
我刚刚从xCode 4.x移动到xCode 5,同时跳转到iOS 7.过去,我在文本中放置了带尾随空格的文本UILabel,并使用右对齐在文本的右侧留下一点空间.由于我已经转移到xCode 5,这种行为似乎已经改变了.当UILabel右对齐文本时,它似乎忽略了尾随空格 - 并将文本对齐,好像根本没有尾随空格.
有没有人见过这种行为?有没有办法在xCode中添加边缘插入以调整这种新行为,还是必须在代码中完成?
我有一个带文字的标签:
但是,我希望它有更多的填充(如果可能的话,边缘要有点圆).但是当我在我的故事板中拉伸标签以使其看起来有填充,然后我重新启动模拟器时,它不会添加填充.
我该怎么做?顺便说一句,我正在使用自动布局+目标c
UILabel内部的文字被左右边界打破.有没有办法在UILabel中添加一些内部填充,以便文本不会如此接近内部边界?
我试图缩进UILabel中的文本,在显示背景颜色的文本周围留下一些边距.根据这里的建议,我已经覆盖textRectForBounds:limitedToNumberOfLines:如下:
- (CGRect)textRectForBounds:(CGRect)bounds limitedToNumberOfLines:(NSInteger)numberOfLines
{
    CGRect intermediate = CGRectMake(bounds.origin.x+MARGIN,bounds.origin.y+MARGIN,bounds.size.width-2*MARGIN,bounds.size.height-2*MARGIN);
    return [super textRectForBounds:intermediate limitedToNumberOfLines:numberOfLines];
}
但无论我做什么,文本都会紧贴矩形的左边界.好像绘图忽略了返回的CGRect的原点部分(虽然它似乎是在考虑宽度部分,好像我减少到中间的宽度,例如bounds.size.width-200textRectForBounds返回的矩形适当地缩小并且文本被绘制成一个很瘦的专栏).
那么:我需要做些什么UILabel来使绘图尊重textForRectBounds-returned-rect的origin.x和origin.y?我宁愿不重写UILabel的drawTextInRect,如果我能帮助它.
更新:这是很久以前的事了,我不记得为什么另一个问题不适合我.我相信这是因为我试图拥有UILabel多行,而这里的解决方案并不适用.
ios ×6
uilabel ×5
iphone ×4
objective-c ×2
cgrect ×1
ios7 ×1
margins ×1
padding ×1
uiedgeinsets ×1
uitableview ×1
xcode ×1
xcode5 ×1