图像出现在 UIImageView 角半径边界 swift

Posted

技术标签:

【中文标题】图像出现在 UIImageView 角半径边界 swift【英文标题】:image appear over UIImageView corner radius border swift 【发布时间】:2019-12-31 12:34:16 【问题描述】:

当我将边框宽度和角半径设置为 UIImageView 并加载图像时,它会出现在边框上 如何解决这个问题

let viewedImage : UIImageView = 
    let img = UIImageView()
    img.layer.borderWidth = 1
    img.layer.borderColor = UIColor.lightGray.cgColor
    img.layer.cornerRadius = 28
    return img
()

【问题讨论】:

尝试添加 yourImageView.clipsToBounds = true 你可以检查一下。 ***.com/questions/50982423/… 【参考方案1】:

设置Docs

img.clipsToBounds = true

将此值设置为 true 会导致子视图被裁剪到接收器的边界。如果设置为 false,则其帧超出接收器可见边界的子视图不会被剪裁。默认值为假

【讨论】:

【参考方案2】:

试一试,告诉我它是否有效......

let viewedImage : UIImageView = 

        let img = UIImageView()
        img.layer.cornerRadius = 28
        img.layer.clipsToBounds = true
        img.layer.borderWidth = 2
        img.layer.borderColor = UIColor.lightGray.cgColor
        return img
    ()

【讨论】:

【参考方案3】:

根据Apple Documentation

clipsToBounds 属性

一个布尔值,用于确定子视图是否被限制在 视图的边界。

讨论 将此值设置为 YES 会导致子视图被剪切到 接收器的边界。如果设置为 NO,则其框架扩展的子视图 超出接收器的可见边界不会被剪裁。默认 值为 NO。

let viewedImage : UIImageView = 
        let img = UIImageView()
        img.layer.borderWidth = 1
        img.layer.borderColor = UIColor.lightGray.cgColor
        img.layer.cornerRadius = 28
        img.clipsToBounds = true
        return img
    ()

【讨论】:

以上是关于图像出现在 UIImageView 角半径边界 swift的主要内容,如果未能解决你的问题,请参考以下文章

IOS:UIImageView边框白色,半径在4个角显示一条奇怪的暗线

UICollectionViewCell 内的 UIImageView 中的角半径

在 UIImageView 上设置角半径不起作用

iOS:图像视图方面适合角半径

如何为xib文件中的元素设置角半径

滑动:只在顶部显示带有半径角的图像。