Swift version: 5.2
You can set the
cornerRadius property of any
UIView to have its edges rounded, but by default that rounds all corners at the same time. If you want only some corners to be rounded, you should set the layer’s
maskedCorners property to be an array of the corners you want – it’s an option set, so you can set one or many depending on your needs.
For example, this code rounds the top-left and bottom-right corners of a view, leaving the other two square:
let redBox = UIView(frame: CGRect(x: 100, y: 100, width: 128, height: 128)) redBox.backgroundColor = .red redBox.layer.cornerRadius = 25 redBox.layer.maskedCorners = [.layerMinXMinYCorner, .layerMaxXMaxYCorner] view.addSubview(redBox)
SPONSORED From January 26th to 31st you can join a FREE crash course for iOS devs who want to achieve an expert level of technical and practical skills – it’s the fast track to being a senior developer!
Available from iOS 11.0
This is part of the Swift Knowledge Base, a free, searchable collection of solutions for common iOS questions.
Link copied to your pasteboard.