0Pricing
SwiftUI Academy · Урок

Привязка выбранной вкладки

Отслеживайте и изменяйте активную вкладку в коде.

«Привязка выбранной вкладки» — бесплатный урок 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 = 0

Bind 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 = 1

A 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 — локальная установка не требуется.

Все уроки этого курса

  1. Создание панели вкладок
  2. Элементы вкладок и значки уведомлений
  3. Привязка выбранной вкладки
  4. Объединение вкладок со стеками
← Назад к SwiftUI Academy