将图像制成圆形或圆形

这个例子说明了如何制作一个 UIViewUIImageView,用这样的半径舍入:

https://i.stack.imgur.com/QRdJe.jpg

Objective-C

someImageView.layer.cornerRadius = CGRectGetHeight(someImageView.frame) / 2;
someImageView.clipsToBounds = YES;

迅速

someImageView.layer.cornerRadius = someImageView.frame.height/2
// this should alleviate the performance hit that adding transparency may cause - see http://stackoverflow.com/a/6254531/189804
// Be sure to check scrolling performance with Instruments if you take this approach.
someImageView.layer.shouldRasterize = true
someImageView.clipsToBounds = true // All parts of the image that are outside its bounds (the frame) are cut out (makes the rounded corners visible)

建议如果你使用自动布局,你将 someImageView.layer.cornerRadius 代码放在 viewDidLayoutSubviews 中。如果图像改变大小,这将允许图像的 cornerRadius 更新。

override func viewDidLayoutSubviews() {
    super.viewDidLayoutSubviews()
    someImageView.layer.cornerRadius = someImageView.frame.size.width/2
    someImageView.layer.masksToBounds = true
}