2011-03-21 70 views
5

我在代碼中的UINavigationController創建的,但我想改變風格,以黑色半透明UINavigationController的風格

FirstViewController *fvc = [[FirstViewControlelr alloc] init]; 
UINavigationController *navcon = [[UINavigationController alloc] init]; 
navcon.navigationController.navigationBar.barStyle = UIBarStyleBlackTranslucent; 
[navcon pushViewController:fvc animated:NO]; 
[self.window addSubview:navcon.view]; 
[self.window makeKeyAndVisible]; 
return YES; 

但他並沒有改變。請幫幫我!

回答

14

我懷疑它與您訪問導航控制器的導航控制器的事實有關。您的導航控制器不在另一個導航控制器中,因此您正在設置不在其中的某種東西的條形風格。

你想這樣的:

navcon.navigationBar.barStyle = UIBarStyleBlackTranslucent; 

你也可以做一個導航控制器,並立即用根視圖控制器初始化它,這樣你就不必手動將其推入,這樣的:

FirstViewController *fvc = [[FirstViewController alloc] init]; 
UINavigationController *navcon = [[UINavigationController alloc] initWithRootViewController:fvc]; 
[fvc release]; 

navcon.navigationBar.barStyle = UIBarStyleBlackTranslucent; 

[self.window addSubview:navcon.view]; 
[self.window makeKeyAndVisible]; 

return YES; 

是的,你忘了在你自己的代碼中發佈fvc

+0

是)愚蠢的錯誤。謝謝 – 2011-03-21 10:33:10