Программные пути навигации
Управляйте навигацией с помощью пути navigationDestination.
«Программные пути навигации» — бесплатный урок SwiftUI Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения SwiftUI Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс SwiftUI Academy содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
Navigating From Code
Sometimes a tap is not enough. After saving a form you may want to jump screens yourself. SwiftUI lets you drive the stack from code. ⚙️
A Path You Control
Give NavigationStack a path binding. This array is the live list of screens currently pushed, and editing it changes navigation instantly.
@State private var path = NavigationPath()
NavigationStack(path: $path) { HomeView() }Push by Appending
Append a value to the path and SwiftUI pushes the matching screen. No tap needed, just change the array.
path.append(book)Routing the Value
A navigationDestination maps each value type in the path to a view, so appended data knows which screen to become.
.navigationDestination(for: Book.self) { book in
DetailView(book: book)
}Pop With Remove
Removing the last element pops a screen, exactly like the back button. You stay in full control of the stack from code.
path.removeLast()Jump Home Instantly
To return all the way to the root, empty the path. Every pushed screen disappears at once, perfect for a Done button. 🏠
path.removeLast(path.count)Deep Linking
Because the path is just data, you can build it from a URL or notification, pushing several screens so users land deep inside the app.
NavigationPath Holds Mixed Types
A NavigationPath can store values of different types together, letting one stack route books, users, and settings without a shared enum.
Or Use a Typed Array
If every screen shares one type, a plain typed array works as the path and reads a little more clearly than NavigationPath.
@State private var path: [Book] = []State Drives the Stack
Navigation becomes state. The visible screens always mirror the path array, so your UI stays predictable and easy to reason about.
Test and Restore
Since the path is plain data, you can save it and restore it, recreating exactly where the user left off when they reopen the app.
Quick Check
What happens when you append a value to a NavigationStack path?
Recap: Programmatic Paths
You bind a path to NavigationStack and push or pop screens by editing that array, turning navigation into predictable, testable state. 🎉
Изучай Swift с ИИ-репетитором — бесплатно
Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.
- Курсы
- 30
- Уроки
- 120
Часто задаваемые вопросы
Урок «Программные пути навигации» бесплатный?
Да — полный текст урока «Программные пути навигации» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс SwiftUI Academy, подпишись на CoddyKit PRO. Курс SwiftUI Academy содержит 4 уроков всего.
Чему я научусь в уроке «Программные пути навигации»?
Управляйте навигацией с помощью пути navigationDestination. Ты практикуешь SwiftUI Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать SwiftUI Academy?
Предыдущий опыт не требуется. SwiftUI Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Программные пути навигации»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке SwiftUI Academy?
Да. Каждый урок SwiftUI Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Переход между экранами с NavigationLink
- Передача данных в подробные представления
- Панель инструментов и заголовок навигации
- Программные пути навигации