试图使 UIImageView 成为一个圆圈,它出现了两次

Trying to make UIImageView a circle and it appears twice

我正在尝试将 swift 中的图像视图作为圆圈添加到 uiview。我在 swift 中调用了以下代码,但是它创建的图像在被更正为圆形之前出现了短暂错误

   override func viewDidLayoutSubviews() {
      super.viewDidLayoutSubviews()
      theirPicMaskFour.layer.cornerRadius = theirPicMaskFour.frame.height / 2
      theirPicMaskFour.layer.masksToBounds = false
      theirPicMaskFour.layer.borderWidth = 0;
      theirPicMaskFour.clipsToBounds = true
  }

下面是它最初的样子。

以下是保养后的样子。

尝试 theirPicMaskFour.layer.masksToBounds = true 并在分配之前注销高度,以确保高度没有异常

[编辑] 在 viewDidLoad 中分配并初始化它,但在 viewDidLayoutSubviews 中更新圆形矩形,因为它将被多次调用,但帧上的更改不会影响它,因为它将保持不变。

尝试

theirPicMaskFour.layer.cornerRadius = theirPicMaskFour.frame.size.width / 2

而不是

theirPicMaskFour.layer.cornerRadius = theirPicMaskFour.frame.height / 2