Анимация перехода не работает должным образом в SwiftUIIOS

Программируем под IOS
Ответить
Anonymous
 Анимация перехода не работает должным образом в SwiftUI

Сообщение Anonymous »

Я пытаюсь создать очень простую анимацию перехода, которая показывает/скрывает сообщение в центре экрана при нажатии кнопки:

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

struct ContentView: View {
@State private var showMessage = false

var body: some View {
ZStack {
Color.yellow

VStack {
Spacer()
Button(action: {
withAnimation(.easeOut(duration: 3)) {
self.showMessage.toggle()
}
}) {
Text("SHOW MESSAGE")
}
}
if showMessage {
Text("HELLO WORLD!")
.transition(.opacity)
}
}
}
}
Согласно документации анимации .transition(.opacity)

Переход из прозрачного становится непрозрачным при вставке и из непрозрачного
на прозрачное при удалении.

сообщение должно исчезать, когда свойство showMessage находится в состоянии становится истинным и исчезает, когда становится ложным. В моем случае это не так. Сообщение появляется с плавной анимацией, но скрывается вообще без анимации. Есть идеи?
РЕДАКТИРОВАТЬ: Посмотрите результат на рисунке ниже, взятом из симулятора.
Изображение


Подробнее здесь: https://stackoverflow.com/questions/577 ... in-swiftui
Ответить

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

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

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

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

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