iOS在圆圈视图中定位UILabel

时间:2015-02-16 10:47:21

标签: ios objective-c storyboard

我定义了一个包含UImageView和UILabel的视图。我为每个元素设置了约束。

想要用第一个视图做一个圆圈,所以我在代码中做了这个:

    self.mainView.layer.cornerRadius = self.mainView.frame.size.width / 2;
    self.mainView.clipsToBounds = YES;

所以它有效,我有一个圆圈,但是UImageView和UILabel似乎没有遵循故事板中设置的限制。

例如,在我的UILabel上,我为mainView设置了左右5px的边距,但我可以看到我的UILabel" out" mainView ....

我试图做一个" setNeedsUpdateConstraints",但它不是解决方案。

那么,我需要做些什么才能正确定位我的UILabel?

谢谢,

2 个答案:

答案 0 :(得分:0)

我认为这就是你要找的东西:

 self.mainView.layer.masksToBounds = YES;

答案 1 :(得分:0)

您的问题是,在更改mainView的图层时,您实际上并未更改视图的边界。视图的边界仍然以矩形方式表示。你需要做的是改变UILable的宽度约束。

为此,只需为您的UILable创建一个autolayout约束(您是否已经拥有它)。控制 - 将其拖动到viewController并使用约束中的constant值动态更改它。

如果您不需要动态设置它,只需设置左侧&正确的利润率更大的利润