UINavigationBar外观设置背景图像:零不´;无法在ios 5.1上运行
我使用以下行设置UINavigationBar外观:UINavigationBar外观设置背景图像:零不´;无法在ios 5.1上运行,ios,Ios,我使用以下行设置UINavigationBar外观: UIImage *navigationBarBackground = [UIImage imageNamed:@"HeaderNavBar.png"]; [[UINavigationBar appearance] setBackgroundImage:navigationBarBackground forBarMetrics:UIBarMetricsDefault]; [[UINavigationBar appearance] setBac
UIImage *navigationBarBackground = [UIImage imageNamed:@"HeaderNavBar.png"];
[[UINavigationBar appearance] setBackgroundImage:navigationBarBackground forBarMetrics:UIBarMetricsDefault];
[[UINavigationBar appearance] setBackgroundImage:nil forBarMetrics:UIBarMetricsDefault];
我用以下行删除它:
UIImage *navigationBarBackground = [UIImage imageNamed:@"HeaderNavBar.png"];
[[UINavigationBar appearance] setBackgroundImage:navigationBarBackground forBarMetrics:UIBarMetricsDefault];
[[UINavigationBar appearance] setBackgroundImage:nil forBarMetrics:UIBarMetricsDefault];
这适用于所有ios,除了ios 5.1…有人知道为什么吗 “当视图的内容更改时,您不会直接重新绘制这些更改。相反,您可以使用setNeedsDisplay或setNeedsDisplayInRect:方法使视图无效。”()。在重新绘制视图后,您是否仍然存在该问题
另见:
然后:
[[UINavigationBar appearanceWhenContainedIn:[self class], nil] setBackgroundImage:nil forBarMetrics:UIBarMetricsDefault];
建议使用。我的视图没有名为setNeedsDisplay的方法?!
[self.view setNeedsDisplay]
怎么样?应该重新绘制整个视图,但最好看看它是否清除了您的UINavigationBar背景。[UINavigationBar外观]setNeedsDisplay]
适合我。这给了我NSInvalidArgumentException',原因:'-[NSMethodSignature getArgumentTypeAtIndex::索引(2)超出范围[0,1]'