2

我有一個視圖控制器,其中導航欄是透明的。我的下一個視圖是一個表格視圖,其中導航欄是白色的。如何在導航欄動畫過程中刪除不需要的黑色區域。屏幕截圖

要停止不需要的動畫,我將導航欄設置爲在表格視圖的'viewDidDissapear'中透明。不幸的是,當我向後導航時(當您向前導航時更加糟糕),這使我留下了下面的圖像。有誰知道如何擺脫黑色區域?

This shows the unwanted black area

-(void)viewWillDisappear:(BOOL)animated  { 


[self.navigationController.navigationBar setBackgroundImage:[UIImage new] 
               forBarMetrics:UIBarMetricsDefault]; 
self.navigationController.navigationBar.shadowImage = [UIImage new]; 
self.navigationController.navigationBar.translucent = YES; 


[super viewWillDisappear:NO]; 

} 

這是我使用在表視圖控制器的代碼。

回答

0

正如你所說,不受歡迎的動畫,。我建議你設置(presentViewController & dismissViewController)你的tableViewController(動畫:NO).........並設置你的導航欄在viewWillAppear的兩個控制器..最好和容易,我想..

+0

感謝您的答案,你能否給我一些關於提交和解散視圖控制器的代碼?它不是我以前做過的事情(總是依靠導航控制器爲我做)。我應該在哪裏調用他們的tableViewController? –

+0

不,不要混淆...如果你使用的是導航控制器,它們的意思是pushViewController和popViewController ...只是設置動畫:不對他們 – nickAtStack

+0

通知我的變化或標記爲答案,如果它爲你做的工作:) – nickAtStack