2012-03-08 11 views
6

Uzaktan veya yerel bildirimleri alırken farklı görünüm denetleyicilerinin bir gezinme yığınının üzerine itildiği bir uygulama geliştiriyorum.Animasyonlu bir ViewController geçişi sırasında ViewControllers'ı UINavigationController'a aktarma

Sorun, uygulama etkin olduğunda ve bir animasyonlu viewcontroller geçişi arasında bir bildirim geldiğinde gelir. Bu NavigationController karıştıran biridir ve ben şu hata mesajı alıyorum:

iç içe pop animasyon beklenmedik bir durumda bir gezinti geçişi Sonlandırılıyor bozuk gezinme çubuğunda neden olabilir. Gezinme çubuğu alt görünüm ağacında bozuk olabilir.

Görüntüleme denetleyicilerinin değişip değişmediğini kontrol etmek için bir yol var mı, eğer öyleyse geçiş tamamlanana kadar bekleyin? Ya da belki bu problemi çözmek için başka yöntemler var mı?

Her zaman olduğu gibi, herhangi bir yardım büyük ölçüde kolaylaşır!

+1

bir çözüm buldunuz mu? Aynı problemim var - bir push bildirimi geldiğinde bir view controller sunmam gerekiyor. Üst/görünür görünüm denetleyicisini bulabilir ve bunun üstünde mevcut olabilir, ancak bu denetleyicinin geçişi gerçekleştirme durumunda olması durumunda, uygulama, "UINavigationController: 0x1d921c30> adresinden bir geçiş geçişi başlatmaya çalışmakla" çöker. geçiş devam ederken. " IsBeingDismissed gibi UIViewController özelliklerinden hiçbiri, viewWillAppear içinden kullanılmadıkça değer döndürmediğinden –

cevap

4

viewController'ın durumunu almak için bazı yöntemler vardır. Gibi: (BOOL)isBeingPresented ve (BOOL)isViewLoaded. Ben apple doc's on ViewControllers.

içine bakmak Ayrıca UINavigationController sahip ayrıca gibi yöntemlerin bir çift:

- (void)navigationController:(UINavigationController *)navigationController didShowViewController:(UIViewController *)viewController animated:(BOOL)animated 
İlgili konular