如何在UIImageView中获取圆形图像

时间:2016-06-23 14:11:32

标签: ios uiimageview

我尝试使用图层获取圆形图像,这是我的代码

_compassArrow.layer.cornerRadius = _compassArrow.frame.size.width / 2;
_compassArrow.layer.masksToBounds = YES;
_compassArrow.layer.borderColor = [UIColor whiteColor].CGColor
compassArrow是一个显示指南针图像的图像视图。当我运行我的程序时,它看起来很糟糕:

my actual picture

我不知道发生了什么事。我为它添加了一些约束,使其与设备具有相同的宽度。这会影响我的形象吗?

2 个答案:

答案 0 :(得分:1)

我认为你在应用约束之前设置了cornerRadius。请尝试将此代码放在layoutSubviewsviewDidLayoutSubviews中。

这样,_compassArrow.frame.size.width值将是应用约束后的值,并且您将获得正确的cornerRadius。

答案 1 :(得分:0)

这是一段代码,可以让你这样做。

        _compassArrow.layer.borderWidth = 1.0
        _compassArrow.layer.masksToBounds = false
        _compassArrow.layer.borderColor = UIColor.whiteColor().CGColor
        _compassArrow.layer.cornerRadius = profilePicture.frame.size.width/2
        _compassArrow.clipsToBounds = true