< How to run some code when state changes using onChange() | What’s the difference between @ObservedObject, @State, and @EnvironmentObject? > |
Updated for Xcode 12.0
New in iOS 14
SwiftUI gives us a dedicated Link
view that looks like a button but opens a URL in Safari when pressed. It’s easy enough to use – just give it a title for the button, plus a destination URL to show, like this:
Link("Learn SwiftUI", destination: URL(string: "https://www.hackingwithswift.com/quick-start/swiftui")!)
As it’s just a text link, you can customize it with a font, color, and more:
Link("Visit Apple",
destination: URL(string: "https://www.apple.com")!)
.font(.title)
.foregroundColor(.red)
And if you’d rather create your own view rather than just use text, you can do that too:
Link(destination: URL(string: "https://www.apple.com")!) {
Image(systemName: "link.circle.fill")
.font(.largeTitle)
}
Alternatively, you can open a URL from code by using the openURL
environment key, like this:
struct ContentView: View {
@Environment(\.openURL) var openURL
var body: some View {
Button("Visit Apple") {
openURL(URL(string: "https://www.apple.com")!)
}
}
}
SPONSORED Would you describe yourself as knowledgeable, but struggling when you have to come up with your own code? Fernando Olivares has a new book containing iOS rules you can immediately apply to your coding habits to see dramatic improvements, while also teaching applied programming fundamentals seen in refactored code from published apps.
Sponsor Hacking with Swift and reach the world's largest Swift community!
Link copied to your pasteboard.