Я создаю приложение, в котором есть главный вид, управляемый контроллером представления, и второе представление настроек, управляемых другим контроллером представления.Анимация завершается немедленно iOS
Я использую контроллер контейнера для целей UI/UX в приложении, где после касания кнопки представление для настроек переместилось с нижней части экрана на середину высоты. Верхняя половина экрана по-прежнему показывает предыдущий основной вид.
Все работает отлично, после нажатия кнопки или когда пользователь уклоняется от контроллера просмотра, который соскользнул, я сохраняю один вид (потому что он все еще виден), я держу контроллер вида в памяти, но я удаляю его от иерархии View Controller и переключиться на другую.
Проблема в том, что когда я нажимаю кнопку, чтобы отобразить контроллер просмотра настроек, все очень простые анимации на главном экране, такие как анимация свойства кадра UILabel, ведут себя неожиданно. Анимация завершена почти сразу.
Я прочитал ответ на StackOverflow, указав на то, что изменение свойства transform делает невозможным анимировать использование свойства frame и требует анимации с помощью свойства center.
Несмотря на то, что я не изменял явно свойство преобразования любых объектов (я не очень хорошо знаком с этим свойством), я попытался анимировать, используя свойство center, и он по-прежнему анимирован слишком быстро.
Вот пример анимации, который завершает сразу после настройки нажата кнопка, но отлично работает иначе:
[UIView animateWithDuration:1.4 animations:^{
self.alarmTimeLabel.center = CGPointMake(self.alarmTimeLabel.center.x, self.alarmTimeLabel.center.y + 200);
}];
Спасибо за любой вход
как-то ... эта анимация находится в поле зренияDidLoad второго контроллера? Такое поведение ... также может произойти, если метка уже анимирована. – TonyMkenu
Анимация происходит в первом контроллере представления, том, что для основного пользовательского интерфейса. Когда пользователь возвращается в основной интерфейс после посещения меню настроек, первый пользовательский интерфейс не оживляет должным образом. –