pushViewController提供黑色背景

时间:2014-04-23 20:51:26

标签: ios objective-c uinavigationcontroller pushviewcontroller

当我尝试将viewController推送到UINavigationViewController时,我遇到了问题。我可以这样做一次,它工作正常。但是当我将第二个VC推到导航控制器上时,第二个VC的背景是黑色的。显示了第二个VC上的所有视图,但背景显示为黑色。它应该显示像我的其他VC一样的背景图像,但它不会。

我正在使用XCode 5为iPhone开发IOS应用程序。我没有使用ARC,auto_layout或故事板(即,我正在使用一些稍微老一点的iOS开发)。我有一个主界面,上面有一个按钮,我将其称为Add Widget按钮。当用户按下此按钮时,这是执行的代码:

WidgetNameVC *vc = [[WidgetNameVC alloc] initWithNibName:@"WidgetNameVC" bundle:nil];
vc.delegate = self;
vc.nameNav=self.navigationController;
[self.navigationController pushViewController:vc animated:YES];
[vc release];

正如您所看到的,我将navigationController保存到第一个新视图控制器中的属性vc.nameNav中。此代码执行正常并且行为正常。

WidgetNameVC有一个包含多个视图的XIB文件,其中一个是我将调用Widget Details按钮的按钮。当我按下Widget Details按钮时,这是执行的代码:

WidgetInfoVC *vc = [[WidgetInfoVC alloc] initWithNibName:@"WidgetInfoVC" bundle:nil];
vc.nameNav=self.nameNav;
[self.nameNav pushViewController:vc animated:YES];
[vc release];

换句话说,我正在将第二个VC推送到navigationController堆栈。事情就是这样。它显示了WidgetInfoVC,但显示的是黑色背景,这不是我想要的。我所有的VC都继承自我自己的BaseVC类,它设置了一个背景图像。似乎推动第二个VC(WidgetInfoVC)以某种方式破坏了背景图像。我没做什么似乎解决了这个问题。

有什么想法吗?

0 个答案:

没有答案