Swift Imageview循环

时间:2017-07-18 13:49:06

标签: swift3 uiimageview

我正在尝试使用swift 3将我的个人资料图片显示为圆形视图。这是我的代码:

self.view.layoutIfNeeded()
self.profileImageView.image = image
self.profileImageView.layer.cornerRadius = self.profileImageView.frame.width/2.0
self.profileImageView.clipsToBounds = true
self.profileImageView.layer.masksToBounds = true

它适用于方形图像。但是,一旦图像不是方形,则不会将图像显示为圆形。为了让它将图像视图显示为圆形,我需要做什么?或者此功能仅限于方形图像?

2 个答案:

答案 0 :(得分:3)

您的代码将角半径设为宽度的一半。当高度==宽度(因此半径也==高度/ 2)时,这样可以正常工作,否则它将无效。

要解决此问题,请添加约束以使profileImageView平方,然后设置profileImageView.contentMode = .aspectFill

答案 1 :(得分:1)

在设置圆角半径之前添加self.view.layoutIfNeeded()行。

self.view.layoutIfNeeded()

self.profileImageView.layer.cornerRadius = self.profileImageView.frame.width/2.0
self.profileImageView.clipsToBounds = true