SwiftUI + СегментедПикер

SwiftUI | Создайте средство выбора с помощью SegmentedPickerStyle

Давайте создадим средство выбора в SwiftUI, которое будет переключать представления каждый раз, когда пользователь их выбирает. Использование SwiftUI 2.0 и Xcode 12.

Сложность: Начинающий | Легко | Нормальный | Испытывающий

Среда: Xcode 12 и SwiftUI

Введение

В этом руководстве я покажу вам, как реализовать Picker с помощью SegmentedPickerStyle в SwiftUI. Мы заставим пользователя менять вид каждый раз, когда он выбирает один из выбранных средств выбора. Пойдем!

Создайте новый проект Xcode

Откройте Xcode › Создайте новый проект Xcode › Шаблон приложения › Назовите его PickerSwiftUI и выберите Интерфейс и жизненный цикл SwiftUI.

Создать 3 вида

Создайте 3 новых SwiftUI представления и назовите их следующим образом:

  • просмотр биткойнов
  • ЭфириумПросмотр
  • litecoinView

Затем просто замените текст «Hello world» на биткойн, эфириум и лайткойн в соответствии с каждым представлением. Мы представим эти представления, как только пользователь выберет их из Picker.

Давайте создадим случаи переключения

Вернитесь к файлу ContentView.swift и скопируйте/вставьте следующий код после последнего закрытия ContentView:

Это случай переключения, который мы собираемся использовать, чтобы указать нашей программе переключаться между представлениями в зависимости от выбора пользователя.

Создать средство выбора

Сначала объявите State прямо над переменной body:

Это даст выбранное значение по умолчанию. Затем замените текущий текст внутри переменной body следующим кодом:

Этот код создает NavigationView с заголовком и представляет SwiftUI Picker, который переключается с одного View на другой на основе на выбор, который мы дали с корпусом переключателя:

switch selectedToken {

...

}

Запустите приложение 📲

И вуаля! Запустите свой проект и переключайтесь между криптовалютами с помощью Picker:

Спасибо, что прочитали! Я всегда рад общению и сотрудничеству на [email protected]. Рассмотрите возможность подписки, чтобы получить неограниченный доступ к моим статьям и всему Медиуму через мою реферальную ссылку.