У меня есть два контроллера вида, которые выталкиваются контроллером навигации. Когда первый контроллер просмотра активен, таймер используется для скрытия строки состояния с анимацией (таймер вызывает метод, который внутренне скрывает строку состояния, вызывая [[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade]
). Когда пользователь нажимает на представление, второй контроллер представления помещается в стек. Второй контроллер просмотра должен отображать строку состояния, чтобы панель навигации отображалась правильно. Иногда случается так, что, когда второй контроллер просмотра нажимается, строка состояния все еще анимируется, и я заканчиваю панель навигации, которая находится за пределами экрана (в основном, вид второго контроллера представления не показывает навигацию бар). Мне было интересно, есть ли способ остановить анимацию строки состояния до нажатия или если есть стандартный способ решить эту проблему.Строка состояния анимации, когда новый контроллер представления помещается в стек
ответ
Вы можете сохранить ссылку на ваш таймер:
myTimer *timer = [NSTimer scheduledTimer...];
затем аннулируют его, когда вы хотите, чтобы в строке состояния анимацию не бывает:
[myTimer invalidate];
myTimer = nil;
Спасибо, я не думаю, что это проблема таймера. На самом деле я уже делаю то, что вы предложили в viewWillDisappear из первого контроллера представления. Проблема заключается в том, что для скрытия строки состояния, которую я использую - '(void) setStatusBarHidden: (BOOL), скрытой с анимацией Animation: (UIStatusBarAnimation), и если анимация не завершена к тому моменту, когда второй контроллер представления находится поверх stack Я вижу проблему, которую я описывал. – Glauco
- 1. анимация UIView продолжает работать после того, как новый контроллер представления помещается в стек
- 2. Строка состояния сдвигает представления вниз
- 3. Новый контроллер представления в xcode?
- 4. Когда создавать новый контроллер
- 5. Как воссоздать стек UIViewController, когда контроллер корневого представления является UITabBarController?
- 6. Segue на новый контроллер представления
- 7. Навигационный контроллер и строка состояния
- 8. Строка состояния скрытие при ландшафтном только контроллер представления представлен над портретным только контроллером представления
- 9. толчок контроллер представления отпустив представленный контроллер представления
- 10. Изменить контроллер представления после завершения анимации всплеска
- 11. Как переключить новый контроллер представления в iOS?
- 12. перерыв gdb, когда следующий fn помещается в стек
- 13. UINavigationController custom LabelView при нажатии нового представления Контроллер в стек
- 14. Установить новый контроллер после завершения анимации
- 15. Пропустить представление изображения из представления коллекции в новый контроллер представления
- 16. iOS7 Строка состояния UISplitViewController
- 17. Открыть новый контроллер представления на true iOS
- 18. Xcode: Когда в стек представлений добавлен контроллер просмотра?
- 19. MBProgressHUD и Storyboard создают новый контроллер представления
- 20. Добавить новый контроллер представления экземпляра - IOS5
- 21. iOS 7 - Строка состояния перекрывает содержимое представления
- 22. Представляем новый контроллер представления под контроллером текущего представления
- 23. Строка состояния IOS-стопа от исчезновения во время анимации
- 24. В Cocoa, когда появился контроллер представления?
- 25. IOS 7 - Скрыть строка состояния на контроллере представления ребенка
- 26. Ошибочная строка состояния iOS8?
- 27. Строка состояния iOS 7 прозрачна
- 28. IOS Уволить и Present контроллер представления пользовательской анимации
- 29. Как обновить стиль строки состояния при переходе на новый контроллер представления?
- 30. Скрытая строка состояния при представлении контроллера представления. Я использую контроллер навигации для UITableView
Вы должны размещать код, который вы используя для анимирования строки состояния. – rdelmar