Привязка выбранной вкладки
Отслеживайте и изменяйте активную вкладку в коде.
«Привязка выбранной вкладки» — бесплатный урок SwiftUI Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения SwiftUI Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс SwiftUI Academy содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
Knowing the Active Tab
Sometimes your code needs to know or change which tab is showing. For that you bind the selection to your own state. 🎯
Give Each Tab a Tag
First mark each tab with a unique tag value so SwiftUI can identify which one is selected.
HomeScreen()
.tabItem { Label("Home", systemImage: "house") }
.tag(0)Store the Selection
Add a @State property to hold the current tab tag. Its value tells you which tab is active.
@State private var selectedTab = 0Bind selection to TabView
Pass that state to the TabView selection parameter using a dollar sign to create a two-way binding.
TabView(selection: $selectedTab) {
// tabs with .tag(...)
}Tags Must Match
The tag type and the selection type must match. If tags are Int, selectedTab must be an Int too.
Reading Which Tab Is Open
Once bound, selectedTab updates whenever the user taps. You can read it anywhere to react to the current tab.
Switching Tabs in Code
Change the state value and the UI follows. Setting selectedTab jumps the user to that tab programmatically.
selectedTab = 1A Jump-to-Tab Button
A button can switch tabs by writing to the binding, handy for a "Go to Settings" shortcut deep in your app.
Button("Open Settings") {
selectedTab = 1
}Enums Make Tags Safer
Plain numbers are easy to mix up. A enum of named cases makes each tag readable and mistake-proof.
enum Tab { case home, settings }Re-Tapping the Selected Tab
Tapping the active tab again keeps the same selection. You can watch for this to scroll a list back to the top.
When You Need the Binding
Skip the binding if tabs are fully independent. Add it only when code must read or set the active tab.
Quick Check
Let us check how SwiftUI tracks the active tab.
Recap: Selected Tab Binding
Tag each tab and bind a @State value to selection, and you can both read the active tab and switch tabs from code. 🎉
Часто задаваемые вопросы
Урок «Привязка выбранной вкладки» бесплатный?
Да — полный текст урока «Привязка выбранной вкладки» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс SwiftUI Academy, подпишись на CoddyKit PRO. Курс SwiftUI Academy содержит 4 уроков всего.
Чему я научусь в уроке «Привязка выбранной вкладки»?
Отслеживайте и изменяйте активную вкладку в коде. Ты практикуешь SwiftUI Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать SwiftUI Academy?
Предыдущий опыт не требуется. SwiftUI Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.
Сколько времени занимает урок «Привязка выбранной вкладки»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке SwiftUI Academy?
Да. Каждый урок SwiftUI Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Создание панели вкладок
- Элементы вкладок и значки уведомлений
- Привязка выбранной вкладки
- Объединение вкладок со стеками