1

我让我的设计师为应用程序创建了所有图标,但它们都很模糊。起初,我怀疑设计师,但我们最终从一位非常知名的 iOS 应用设计师那里得到了一个小图标套件。我实现了它们,我得到了和以前一样的模糊。

所以我知道这不是我的设计师。不知何故,这一定是我(编码员)的错。我曾经看到一些关于获得 CGRefContext 或使图标和图像更清晰的东西,但我再也找不到有人说答案的 SO 问题:(

我已经保存了应用程序中所有内容的常规大小图标 + @2x 大小的图标。

例如,我们尝试将一些工具栏图标放入工具栏中,图像的大小为 25 x 25 的正常大小,然后是 50 x 50 的@2x 大小。

另外,我正在直接对 iPhone 4S 进行测试。所以这不像我在模拟器或其他东西中查看它。

我已经查看了图标大小指南,并且将图标大小全部加倍只会导致更大版本的图标。也许有一些我不知道的以编程方式缩小它们的方法?

请帮忙。几个星期以来,我们一直在被动地尝试纠正这个问题!

应要求提供的图标:

普通的 guestlist_icon.png

@2x guestlist_icon@2x.png

4

2 回答 2

6

虽然我在 6 个月前问过这个问题,但我希望这个问题在未来仍然可以帮助一些人。我了解到,获得最清晰图像的最佳方法是从设计师开始。

在完成设计时,设计师需要使用基于矢量的应用程序,例如 Adob​​e Illustrator。他们不应该使用 Adob​​e Photoshop 等基于像素的应用程序来完成设计。

当我问这个问题时,这并不是我的问题。这实际上是我的愚蠢错误。我将图像保存为@2X 而不是@2x。所以视网膜图像永远不会被加载。严重的是最大的荷马辛普森“Doh!”之一 我生命中的时刻。

于 2013-06-27T20:59:07.960 回答
0

首先,我不明白这意味着什么:“另外,我正在直接对 iPhone 4S 进行测试。所以这不像是在模拟器或其他东西中查看它。”

可能的问题:

  1. 图片的提名->根据您的评论,我认为提名是正确的。

  2. 创建图像的方式 -> 如果您使用“imageNamed”之类的方法,它将处理 2x 图像。如果你使用“imageWithContentsOfFile”之类的方法,你需要自己做:

    -(NSString *)getPathByFileName:(NSString *)name{
        if([UIScreen mainScreen].scale == 2.0) {
            return [[NSBundle mainBundle] pathForResource:[name stringByAppendingString:@"@2x"] ofType:@"jpg"];
        }else{
            return [[NSBundle mainBundle] pathForResource:name ofType:@"jpg"];
        }
    }
    [UIImage imageWithContentsOfFile:[self getPathByFileName:name]];
    
  3. 您确定在 Xcode 中添加的所有文件。

于 2013-01-27T10:00:41.297 回答