拐角半径仅在特定拐角处
Posted
技术标签:
【中文标题】拐角半径仅在特定拐角处【英文标题】:Corner radius just in particular corner 【发布时间】:2018-08-05 21:07:09 【问题描述】:我在 Swift 4 中工作,我正在尝试制作一个只有四个角中的两个圆角的按钮(对于某些按钮,右上角和按钮右,以及一些左上角和左下角)。
我搜索了很多,我发现的只是:myButton.layer.cornerRadius = newCornerRadiusInPixels;
。它工作得很好,但它同时圆了所有的角落。
有没有办法只圆一个特定的角落? 谢谢!
【问题讨论】:
***.com/questions/4845211/just-two-rounded-corners/… 【参考方案1】:适用于 ios 11 及更高版本:
myButton.layer.maskedCorners = [.layerMaxXMaxYCorner] // or some other corner(s)
【讨论】:
【参考方案2】:试试这个
extension UIView
func roundCorners(_ corners: UIRectCorner, radius: CGFloat)
let path = UIBezierPath(roundedRect: self.bounds, byRoundingCorners: corners, cornerRadii: CGSize(width: radius, height: radius))
let mask = CAShapeLayer()
mask.path = path.cgPath
self.layer.mask = mask
view.roundCorners([.topLeft, .bottomRight], radius: 10)
【讨论】:
谢谢伙计,它对我不起作用。我完全按照所示使用并将其放置在视图中确实加载了。我错过了什么吗?以上是关于拐角半径仅在特定拐角处的主要内容,如果未能解决你的问题,请参考以下文章
具有拐角半径和阴影视图的 UIView 不会在拐角处剪辑子视图