1

У меня есть viewController с изображением UIWebView. Внутри этого UIWebView У меня работает приложение Sencha Touch. Вдобавок к этому UIWebView сидит родной UINavigationBar (не Сенча Touch).Анимация НавигацияБара à la pushViewController без изменения viewController

Внутри приложения Sencha Touch пользователь может переключать экраны взад и вперед. Sencha Touch оживляет эти переключатели, как и было бы, если бы я вызвал pushViewController в своем родном приложении.

Конечно, те анимации, которые происходят из моего приложения Sencha Touch, не меняют родной UINavigationBar. Я могу вручную изменить элементы left/rightBarButtonItems и navigationitem.title. Но я хотел бы, чтобы эти изменения были анимированы, как будто я бы назвал pushViewController.

Есть ли способ получить эти анимации на UINavigationBar без фактического изменения или анимации UIWebView? Любая идея, указывающая мне в правильном направлении, как достичь этого, будет хорошо оценена ...

ответ

1

Вы пробовали pushNavigationItem:animated метод UINavigationBar? Вы можете создавать экземпляры на UINavigationItem и продолжать нажимать и выталкивать их из панели навигации, как вам нравится. UINavigationItem также имеет title собственность, которая позаботится о названиях навигации и back кнопок.

Прочитайте это для более подробной информации: http://developer.apple.com/library/ios/#documentation/uikit/reference/UINavigationBar_Class/Reference/UINavigationBar.html

+0

Похоже, это может быть полезно для меня. Первая проблема: «Не могу вызвать pushNavigationItem: анимировать: прямо на UINavigationBar, управляемом контроллером». Может быть, я могу скрыть контролируемый UINavigationBar и создать свой собственный на этом ViewController. Понадобится некоторое время, чтобы поиграть с этой идеей ... –

+0

Поскольку вы собираетесь управлять панелью навигации самостоятельно, просто не используйте 'UINavigationController' вообще. Измените размер вашего представления таким образом, чтобы он учитывал навигационную панель и помещал ваш собственный экземпляр панели вверху. Это избавит вас от скрытия панели навигации. Если у вас есть какое-то другое использование навигационного контроллера, у вас не будет такой возможности. – Sailesh

+0

Я разрабатываю гибридное приложение с гораздо большим количеством просмотров, чем тот, который показывает приложение Sencha Touch. Я определенно хочу использовать UINavigationController. Но сокрытие управляемого UINavigationBar и показ моего собственного на этом единственном ViewControlle уже работает. Thx много для того, чтобы указать мне на возможность использования автономного UINavigationBar. –