【问题标题】:SWIFT - Setting layer.cornerRadius greater than the view height causes issuesSWIFT - 设置 layer.cornerRadius 大于视图高度会导致问题
【发布时间】:2021-10-17 20:25:53
【问题描述】:
我实际上只想在一侧的视图中添加圆角半径。半径应该是全高。这是我的实现。
someView.layer.cornerRadius = someView.frame.size.height
someView.layer.maskedCorners = [.layerMaxXMaxYCorner]
这会根据需要完成这项工作,但它会在其他侧面添加额外的形状,如下所示。
可能是什么问题?
【问题讨论】:
标签:
ios
swift
swift3
cornerradius
【解决方案1】:
这看起来像一个 iOS 错误,我能够重现它
但通常你不想将cornerRadius 设置为大于一半视图最小边,在你的情况下:
someView.layer.cornerRadius = someView.frame.size.height / 2
我认为它会产生您期望的结果:
角半径是矩形角内接圆的半径,我认为这就是为什么半径大于 side/2 时可能存在问题:圆不再适合矩形