Updated for Xcode 13.0 beta 2
SwiftUI gives us a dedicated
border() modifier to draw borders around views. It has a few variations depending on whether you want to specify a stroke width or a corner radius, so here are a few examples:
This adds a simple 1-point black border around a text view:
Text("Hacking with Swift") .border(Color.green)
If you want to make the border so that it doesn’t sit right on the edges of your view, add some padding first:
Text("Hacking with Swift") .padding() .border(Color.green)
This adds a 4-point red border:
Text("Hacking with Swift") .padding() .border(Color.red, width: 4)
If you want anything more advanced – e.g., if you want to round the corners of your border – you need to use the
overlay() modifier instead. For example, this adds a 4-point blue border with 16-point rounded corners:
Text("Hacking with Swift") .padding() .overlay( RoundedRectangle(cornerRadius: 16) .stroke(Color.blue, lineWidth: 4) )
strokeBorder() with shapes, and
border() with other view types.
SPONSORED From August 2nd to 8th you can join a FREE crash course for mid/senior iOS devs who want to achieve an expert level of technical and practical skills – it’s the fast track to being a complete senior developer!
Link copied to your pasteboard.