Autumn Sale50% offCOMPOT
Links & SharingFree ComponentiOS 16.0+Xcode 15+

Link as Button

Fully styled SwiftUI button that triggers web URL opening.

SwiftUI Implementation

Pure Vanilla Swift • No Dependencies
linkAsButton.swift
import SwiftUI


struct UseLinkAsButton: View {
    
    var body: some View {
        LinkAsButton(url: "https://www.compotui.com", systemSymbol: "globe", text: "Website")
    }
}

#Preview {
    UseLinkAsButton()
}


struct LinkAsButton: View {
    
    let url: String
    let systemSymbol: String
    let text: String
    
    var body: some View {
        Link(destination: URL(string: url)!, label: {
            HStack(spacing: 16) {
                Image(systemName: systemSymbol)
                Text(text)
            }
            .padding(.horizontal, 32)
            .padding(.vertical, 16)
            .font(.largeTitle)
            .foregroundColor(.white)
            .background(
                Capsule()
                    .fill(Color.blue)
                )
        })
    }
}

Ready to copy and paste directly into any Xcode project running iOS 16.0+.

Recommended Use Cases

  • First-run onboarding flows and feature introductions
  • Paywalls, upgrade prompts, and subscription tiers
  • App settings, preferences, and account configuration screens

Component Details

iOS Compatibility
iOS 16.0+
Xcode Version
Xcode 15+
Platform
iOS
License Tier
Free
Themes & Contexts
settingsonboardingpaywall
C

Compot for iOS

Native SwiftUI playground app

Preview all 130+ components interactively on your device and copy code straight to Xcode with 1 tap.

Get Compot on the App Store