首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带视网膜的自定义UINavigationBar的UIBarMetrics值

带视网膜的自定义UINavigationBar的UIBarMetrics值
EN

Stack Overflow用户
提问于 2013-07-10 00:26:02
回答 1查看 2.3K关注 0票数 0

我正在开发一个具有自定义导航栏的iPhone应用程序。下面是我的代码:

代码语言:javascript
复制
- (void)viewDidLoad
{
    [super viewDidLoad];
    UIImage *testNav = [UIImage imageNamed:@"Test Nav Bar 320 wide.png"];
    [self.navigationController.navigationBar setBackgroundImage:testNav forBarMetrics:UIBarMetricsDefault];
}

当我运行应用程序时,它看起来很好。不过,我还有一个视网膜版的导航栏。当我替换:

@"Test Nav Bar 320 wide.png"

使用视网膜图形:

@"Test Nav Bar 640 wide.png"

导航栏变得太大了,从屏幕上消失了。

我做错了什么?是不是跟这个有关:

forBarMetrics:UIBarMetricsDefault

我是iOS开发的新手,如果有任何帮助,我将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-10 00:33:24

苹果为图像使用了一个命名convention,允许系统轻松地识别针对不同平台的图像(例如视网膜和非视网膜,iPad和iPhone),而不需要用户做出任何努力(除了提供图像)。

在你的例子中,只需将你的图像命名为navbar.png和Retina version navbar@2x.png即可。使用[UIImage imageNamed:@"navbar.png"]启动镜像,系统会自动选择正确的镜像(即使您从未提及navbar@2x.png anywhere!)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17553452

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档