UIImageView cornerRadius没有使它成为圆形

时间:2017-10-06 05:12:43

标签: ios uiview uiimageview swift4

我使用CarbonKitclass klass(object): def __init__(self,func): self._func=func def plus(self,value): v_val = [1, 2, 3, 4] funcs=[self._func(v) for v in v_val] s=0 for i in funcs: s=s+i s=s+value return s def other(self): c=0 for i in v_val: c+=i return c 内显示了一个viewController,用于制作像android这样的标签。

我已经在其中一个标签下显示了UIView,其中包含userProfileViewController我试图通过使用圆圈显示这段代码:

UIImageView

结果是: enter image description here

我的猜测是,可能是因为在self.userDisplayPic.layer.cornerRadius = self.userDisplayPic.frame.size.width / 2; self.userDisplayPic.clipsToBounds = true 内部呈现时自动调整可能会压缩设计,但其他元素特别是更新按钮似乎很好。那么有什么建议可以修复吗?

4 个答案:

答案 0 :(得分:4)

尝试在viewWillLayoutSubviews中设置cornerRadius,它将使用半径的实际宽度。

List<SomeOtherPojo> secondList = new ArrayList<SomeOtherPojo>();

答案 1 :(得分:2)

需要一段时间self.view.layoutIfNeeded()

试试此代码

 DispatchQueue.main.async {
         self.view.layoutIfNeeded()    

        self.userDisplayPic.layer.cornerRadius = self.userDisplayPic.frame.size.width / 2;
        self.userDisplayPic.clipsToBounds = true
        self.view.layoutIfNeeded()    


  }

答案 2 :(得分:1)

这是因为您的self.userDisplayPic高度宽度不一样,首先使它相同,然后代码将会为您工作。

self.userDisplayPic.layer.cornerRadius = self.userDisplayPic.frame.size.width / 2;
self.userDisplayPic.clipsToBounds = true

并在viewWillLayoutSubviewsviewWillAppear方法

中编写这些代码

答案 3 :(得分:0)

 self.userDisplayPic.layer.cornerRadius = userDisplayPic.frame.height/2
 self.userDisplayPic.clipsToBounds = true