Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/107.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 无法使我的导航栏图像正确覆盖主导航栏_Ios_Objective C_Uinavigationcontroller_Uinavigationbar - Fatal编程技术网

Ios 无法使我的导航栏图像正确覆盖主导航栏

Ios 无法使我的导航栏图像正确覆盖主导航栏,ios,objective-c,uinavigationcontroller,uinavigationbar,Ios,Objective C,Uinavigationcontroller,Uinavigationbar,我想将我的表视图导航栏背景图像更改为一些png,我创建了导航栏png,其大小与我在interface builder中检查的默认导航栏的大小完全相同 这是我的表视图控制器类viewDidLoad方法中的代码: 有一次我试过这个: UIImageView *backImgView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"nav.png"]]; [self.navigationController.navigationBa

我想将我的表视图导航栏背景图像更改为一些png,我创建了导航栏png,其大小与我在interface builder中检查的默认导航栏的大小完全相同

这是我的表视图控制器类viewDidLoad方法中的代码:

有一次我试过这个:

UIImageView *backImgView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"nav.png"]];
[self.navigationController.navigationBar addSubview:backImgView];
Shouldn't this work..?
[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"nav.png"] forBarMetrics:UIBarMetricsDefault];
另一个是这个:

UIImageView *backImgView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"nav.png"]];
[self.navigationController.navigationBar addSubview:backImgView];
Shouldn't this work..?
[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"nav.png"] forBarMetrics:UIBarMetricsDefault];
这两个人都来自stack overflow试图帮助我解决这个问题的人

这是interface builder中的“我的表视图”设置,如果此帮助:

上面的是我想得到的,下面的是我得到的:


谢谢

您是否将UIViewController显示为模式视图或PopOver视图?@BenjaminJimenez PopOver不确定它是否有效,但您是否尝试过更改条形图样式,看到第一个答案了吗?如果你说你用的是popover,可能是半透明的。你真的把一个UINavigationController放在你的popover中,把问题控制器作为根吗?如果不是,则self.navigationController将为零。解决方案是在@RoryMcKinnel中嵌入一个UINavigationController。我有一个:视图控制器,我从中弹出。B:我弹出的视图控制器,它是一个表视图控制器,在其vieDidLoad中,我为nav分配bg。我不需要在B视图控制器中为它编写更多的代码。你说我需要做什么?