2011-08-04 129 views
0

我想为我的导航控制器设置背景图像。在第一个视图中,我想显示不同的图像,然后在其他视图中显示相同的视图。 目前我所得到的是我能够在第一个视图上显示图像,但不知何故,我无法将其删除,并且与下一个视图中的其他图像重叠。 下面的代码:如何只为一个视图设置UINavigationController图像,然后为其余视图设置另一个图像?

- (void)viewDidLoad { 
    [super viewDidLoad]; 
    navImage = [[UIImageView alloc]init]; 
    navImage.image = [UIImage imageNamed:@"iphone_dashboardFirst.png"]; 
    WBWAppDelegate * appDelegate = [(WBWAppDelegate*)[UIApplication sharedApplication]delegate]; 
    appDelegate.rootNav.navigationItem.titleView = navImage; 


} 
-(void)viewWillDisappear:(BOOL)animated 
{ 
    navImage.image = [UIImage imageNamed:@"iphone_dashboard_header.png"]; 
    WBWAppDelegate * appDelegate = [(WBWAppDelegate*)[UIApplication sharedApplication]delegate]; 
    appDelegate.rootNav.navigationItem.titleView = navImage; 

} 
+0

向viewWillDisappear抛出一个断点,并检查它是否被调用,如果你还没有。你也可以尝试把它放到viewDidUnload中。我还没有和这些玩家一起玩,所以我只是在这里抛出一些想法。 –

回答

0

做到这一点,easyest方法,就是去做你在这里做在viewDidLoad中同样的事情:在viewDidLoad中:下一个控制器。该视图将会消失:在我之前造成了一些麻烦,我不确定为什么。

编辑

你可以检查以下任何一种方法的工作:

– viewWillDisappear: 
– viewDidDisappear: 
– viewDidUnload 

这是我能想到的可能,这是唯一的方法。

+0

Tha我知道,但在这里我有15个意见,我不想改变这个每个视图。所以我正在寻找一些可以在这里实施的解决方案,并将反映每一个地方。 – Ashutosh

+0

我编辑了我的答案。希望它有帮助,否则我不能帮助你,对不起。 – Manuel

相关问题