Как использовать анимацию после обновления iOS 17?IOS

Программируем под IOS
Ответить
Гость
 Как использовать анимацию после обновления iOS 17?

Сообщение Гость »


После обновления до iOS 17 анимация, которую я использую в своем проекте, изменилась и теперь выглядит плохо.

При использовании у меня появилось предупреждение:

Анимация устарела в iOS 15.0: вместо нее используйте withAnimation или анимацию(_:value:).

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

Вот мой код:

TabView(выбор: $selectedCategory) { Просмотр1() .tag(Категория.view1) .onAppear { } .анимация(.default) ИзображениеView() .padding(.top) .tag(Категория.imageView) .onAppear { } .анимация(.default) Просмотр3() .tag(Категория.view3) .onAppear { } .анимация(.default) } Анимация по умолчанию происходила при инициализации представлений во вкладках. Это все еще происходит, но вместо красивого естественного затухания оно выглядит неряшливо.

На что мне нужно заменить .animation(.default), чтобы вернуться к приятному эффекту плавного затухания?

Я пытался присвоить анимации логическое значение, для которого в .onAppear было установлено значение true, но это, похоже, не сработало.

Вот пример для воспроизведения:

struct ContentView: Просмотр { var body: some View { НавигацияВью { ВСтек { NavigationLink(пункт назначения: View2()) { Текст («Нажми на меня») .foregroundStyle(.green) } } } } } #Предварительный просмотр { КонтентПросмотр() } структура View2: Просмотр { var body: some View { ВСтек { Круг() .fill(.красный) .padding() } .onAppear{ } .анимация(.default) } } Как вы можете видеть, анимация заставляет красный круг покачиваться, когда он появляется, до iOS 17 он исчезал. Если вы удалите анимацию, вы заметите, что колебание исчезнет.
Ответить

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

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

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

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

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