Задать вопрос
deleted-mezhevikin
@deleted-mezhevikin

Анимация при pushViewController в UINavigationController на ios7?

В ios7 поменялась анимация при pushViewController, и мне жутко не нравится как это сейчас выглядит (затемнение + под конец анимации притормаживание).


Хотелось бы сделать так как это выглядело в ios6.


Нашел два решения:
1. stackoverflow.com/questions/18867248/restore-pre-i...

Не работает при пуше назад.

2. github.com/nicklockwood/OSNavigationController — полностью заменяет UINavigationController, анимация становится точно такой же как в ios6, но отваливаются некоторые функции нативного UINavigationController, например не работает hidesBottomBarWhenPushed + наблюдаются баги с navigationBar.


Встречал ли кто-нибудь полностью рабочее решение данной проблемы?

И нравится ли вам новая анимация?
  • Вопрос задан
  • 3708 просмотров
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    iOS-разработчик
    10 месяцев
    Далее
  • Нетология
    iOS-разработчик с нуля
    11 месяцев
    Далее
  • LearnQA
    Автоматизатор мобильных приложений
    9 недель
    Далее
Решения вопроса 1
smanioso
@smanioso
Отмечайте ответы на свои вопросы!

Еще один возможный вариант решения - кастомная анимация: https://github.com/Dzamir/OldStyleNavigationControllerAnimatedTransition

В простых проектах ошибок не заметил.

Ответ написан
Пригласить эксперта
Ответы на вопрос 2
Я не пробовал, но точно можно сделать custom UIStoryboardSegue, там переписать perform, достать в нем вьюху текущего контроллера, вьюху destination контроллера и сделать анимацию.
segue назад тоже можно протянуть, для этого есть зеленая иконка Exit на контроллерах в сториборде.

Надеюсь, что это нужное направление.
Ответ написан
Комментировать
egormerkushev
@egormerkushev
iOS разработчик, автор PixelMixel
Может быть поможет
www.objc.io/issue-5/view-controller-transitions.html
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы