---
title: "init(_:tag:selection:destination:)"
framework: swiftui
role: symbol
role_heading: Initializer
path: "swiftui/navigationlink/init(_:tag:selection:destination:)"
---

# init(_:tag:selection:destination:)

Creates a navigation link that presents a destination view when a bound selection variable matches a value you provide, using a text label that the link generates from a title string.

## Declaration

```swift
nonisolated init<S, V>(_ title: S, tag: V, selection: Binding<V?>, @ContentBuilder destination: () -> Destination) where S : StringProtocol, V : Hashable
```

## Parameters

- `title`: A string for creating a text label.
- `tag`: The value of selection that causes the link to present destination.
- `selection`: A bound variable that causes the link to present destination when selection becomes equal to tag.
- `destination`: A view for the navigation link to present.

## See Also

### Creating links with content builders

- [init(_:isActive:destination:)](swiftui/navigationlink/init(_:isactive:destination:).md)
- [init(isActive:destination:label:)](swiftui/navigationlink/init(isactive:destination:label:).md)
- [init(tag:selection:destination:label:)](swiftui/navigationlink/init(tag:selection:destination:label:).md)
