gpt4 book ai didi

objective-c - UINavigationBar setBackgroundImage : forBarMetrics: Not Working

转载 作者:技术小花猫 更新时间:2023-10-29 10:18:41 27 4
gpt4 key购买 nike

我刚刚切换到 iOS 5,除了自定义导航栏外,我的应用程序中的一切似乎都正常工作。我环顾四周,听从了每个人关于调用新方法 setBackgroundImage: forBarMetrics: 的建议,但它似乎不起作用。这是我试图同时放在应用程序委托(delegate)和某些 View Controller 的 viewDidLoad 方法中的代码:

UINavigationBar *nb = [[UINavigationBar alloc]init];
if( [nb respondsToSelector:@selector(setBackgroundImage:forBarMetrics:)] )
{
UIImage *image = [UIImage imageNamed:@"navBarBackground.png"];
[nb setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];
}
[nb release];

不幸的是,这不起作用。如果有人有任何建议,我会洗耳恭听!

最佳答案

要将 image 应用于所有导航栏,请使用外观代理:

[[UINavigationBar appearance] setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];

对于单个栏:

// Assuming "self" is a view controller pushed on to a UINavigationController stack
[self.navigationController.navigationBar setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];

在您的示例中,背景图像不会改变,因为 nb 没有连接到任何东西。

关于objective-c - UINavigationBar setBackgroundImage : forBarMetrics: Not Working,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7760819/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com