Autolayout VFL和利润

时间:2014-12-13 10:43:36

标签: ios autolayout margins

与Autolayout有一些问题并使用VFL定义它。

我在代码中有一个UILabel和UIImage,我想将它们都对齐到容器的顶部。一切正常,除了UILabel,顶部有填充物,我无法摆脱它。

我正在使用一个非常简单的VFL字符串:“V:| - (0) - [labelView]”和“V:| - (0) - [imageView]”

imageView可以正常工作,但labelView有填充,我无法摆脱它。

AL Problem

是否有可以关闭的边距或填充设置?

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

好的,做了一些研究,感谢这个链接中的图形:http://www.cocoanetics.com/2010/02/understanding-uifont/,我能够找到解决方案。

使用以下内容覆盖UILabel并覆盖drawTextInRect:

- (void)drawTextInRect:(CGRect)rect
{
   CGFloat topInset = self.font.ascender - self.font.descender - self.font.capHeight;

   UIEdgeInsets insets = {-topInset, 0, 0, 0};

   return [super drawTextInRect:UIEdgeInsetsInsetRect(rect, insets)];
}

希望这有助于其他寻求解决类似问题的人! : - )