1

我有一個UINavigationController中設置的自定義UINavigationBar。我想阻止導航欄從NavigationController中推出並彈出新視圖控制器時進行動畫處理。通常,UINavigationBar在推動過程中從右向左動畫標題和返回按鈕,並在彈出過程中從左到右。我想停止這個功能,保持NavigationBar靜態或多或少。當我推送和彈出UIViewControllers時,如何防止UINavigationBar動畫化?

-(UINavigationItem *)popNavigationItemAnimated:(BOOL)animated{ 
    return [super popNavigationItemAnimated:NO]; 
} 

但是,如果我重寫

- (void)pushNavigationItem:(UINavigationItem *)item animated:(BOOL)animated 

的UINavigationBar的還是動畫,每當我推新視圖控制器到:

我可以通過覆蓋在我的自定義UINavigationBar的下列防止爆裂動畫NavigationController。

編輯:我仍然想要推動或彈出viewController動畫進或出。只有NavigationBar應該停止。

+1

? – user968597 2013-04-23 09:27:27

+1

如果我重載 - (void)pushNavigationItem:item animated:動畫,這並不重要,因爲在推送viewController時從未調用該方法。 – selljamhere 2013-04-23 09:29:33

回答

0

這對我的作品 - 覆蓋在UINavigationBar的這種方法:用動畫選項爲NO即使在

- (void)pushNavigationItem:(UINavigationItem *)item { 
    NSMutableArray* items = [[self items] mutableCopy]; 
    [items addObject:item]; 
    self.items = items; 
} 
相關問題