Senaryo alın:iPhone'da güzel animasyon ile, UINavigationBar temsilci "geri" izin vermek
kullanıcı geri düğmesine musluklar, (UINavigationController
bir alt sınıfta uygulanan) UINavigationBar
temsilci yöntemi bu gibi YES
döndürür:
- (BOOL)navigationBar:(UINavigationBar *)navigationBar shouldPopItem:(UINavigationItem *)item
{
// Verify stuff...
return YES;
}
Şimdi docs göre, nav bar ve senkronize içeriğini ve bunu yapmak için bir yer tutmak için uygulamanın sorumluluğu temsilci yönteminde mi
- (void)navigationBar:(UINavigationBar *)navigationBar didPopItem:(UINavigationItem *)item
Sorun, didPopItem
yalnızca nav çubuğunun pop animasyon dizisi bittikten sonra çağrılır, bu yüzden orada [self popViewControllerAnimated: NO]
'u çağırırsam net sonuç, önce nav çubuğu geri, daha sonra içeri kaydırır.
Ve bu sadece yanlış görünüyor.
Gezinme denetleyicisinin pop...
temsilcisini shouldPop...
temsilcisine çağırırsam, çakışan animasyonların etkisine bir hata iletisi alıyorum ve son durum temiz değil.
Bu yüzden sorum, UINavigationController'ın içeriğini değiştirmesi için başka bir yol var mı, tercihen nav çubuğuyla senkronize edilmiş güzel bir animasyonla, ama nav çubuğu ve navigasyon denetleyicisi arasında karışıklık yaratmadan?
Hedef işletim sistemi iOS 4.2 ve sonrası.
Geri düğmenin yerine başka bir sol düğme oluşturabileceğimin farkındayım, ancak bir temsilci kullanmak için daha temiz buldum, ayrıca, istediğim şey olan bir "gerçek" geri düğmesi alıyorum.
Y geçerli olup olmadığını
Bilmiyor 3 paragh whihc u ana üssü olduğunu düşünmek –
Neden bir "UINavigationController" ile ayrı bir gezinme çubuğu kullanıyorsunuz yerine kullanan birini kullanıyorsunuz? – Greg