Анимация панели инструментов SwiftUI Liquid Glass в iOS 26 воспроизводится только при быстром переключении состояний.IOS

Программируем под IOS
Ответить
Anonymous
 Анимация панели инструментов SwiftUI Liquid Glass в iOS 26 воспроизводится только при быстром переключении состояний.

Сообщение Anonymous »

Я тестирую поведение панели инструментов Liquid Glass iOS 26 в SwiftUI. Панели инструментов имеют анимацию морфинга/материализации, когда их содержимое изменяется во время навигации.
В моем случае я переключаю элементы панели инструментов с помощью сегментированного средства выбора (не навигации). Содержимое панели инструментов меняется, но анимация Liquid Glass воспроизводится только в том случае, если я переключаю вкладки очень быстро. Если я переключаюсь нормально, панель инструментов обновляется мгновенно без анимации.
Код воспроизведения

Код: Выделить всё

struct ContentView: View {

@State private var tab: Tabs = .tab1

var body: some View {
NavigationStack {
ZStack {
switch tab {
case .tab1:
Text("Tab 1")
.toolbar {
ToolbarItem(placement: .topBarLeading) {
Button("Tab 1 Button", systemImage: "person") { }
}
}

case .tab2:
Text("Tab 2")
.toolbar {
ToolbarItem(placement: .topBarLeading) {
Button("Tab 2 Button", systemImage: "plus") { }
}
ToolbarItem(placement: .topBarLeading) {
Button("Tab 2 Button", systemImage: "trash") { }
}
}
}
}
.animation(.default, value: tab)
.navigationTitle("Testing Toolbar")
.toolbarTitleDisplayMode(.inline)
.safeAreaBar(edge: .top) {
Picker("Picker", selection: $tab) {
Text("Tab 1").tag(Tabs.tab1)
Text("Tab 2").tag(Tabs.tab2)
}
.pickerStyle(.segmented)
}
}
}

enum Tabs {
case tab1
case tab2
}
}
Поведение
  • Обычное переключение вкладок → панель инструментов меняется без анимации Liquid Glass
Изображение
  • Быстрое переключение вкладок → анимация морфинга Liquid Glass работает play
Изображение

Вопрос
Есть ли способ заставить анимацию Liquid Glass, когда элементы панели инструментов изменяются из-за обновлений состояния (например, сегментированный выбор)?

Подробнее здесь: https://stackoverflow.com/questions/798 ... g-state-ra
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»