为啥视网膜设备上的图标不显示?

Posted

技术标签:

【中文标题】为啥视网膜设备上的图标不显示?【英文标题】:Why is icon on retina device not showing up?为什么视网膜设备上的图标不显示? 【发布时间】:2012-09-04 21:45:06 【问题描述】:

我有一个 iPhone 应用程序,它显然没有在仅在视网膜 iPhone 设备上的主/桌面屏幕上显示其图标。

我可以在视网膜模拟器和普通 iPhone 模拟器中看到图标。 我也可以在我的 iPad2 设备上看到该图标。

我的 Xcode plist 有两个键/值:

    “图标文件”设置为icon.png “图标文件”,第 0 项设置为 icon.png

我在项目中包含的单个 icon.png 是一个 144 x 144 png 图像(我想我只需要创建一个普通 iPhone 和视网膜 iPhone 都会使用的高分辨率图标图像,而不是通过重复的图标文件,视网膜版本被附加@2x.png)。

我很好奇为什么这在视网膜 iPhone 设备上不起作用,因为只有一个 icon.png 仍应在所有 iPhone 上显示它(例如:视网膜 iPhone 仍可以显示 72 x 72 图标)。

有人看到我在这里做错了吗?

【问题讨论】:

我相信你也需要在末尾添加@2x,这样你就必须提供两张图片,如果你打算提交给苹果,你必须有一个标准和高分辨率的苹果指南状态. 过去我曾成功提交过不支持 Retina 显示器的应用程序。由于图像被拉伸,Retina 设备仅显示模糊图像。也许有些东西改变了不再支持这个? 我为我的团队和其他几个人向 Apple 提交了应用程序......我只注意到他们在过去几个月中因为缺少视网膜图像而被退还,所以也许他们没有强制执行以前包含高分辨率图像。再说一次,我不记得在过去几周之前我最后一次提交应用程序是什么时候。 我只知道当我阅读 Apple 提交指南时,它指出应该有一个标准分辨率和高分辨率图标图像。可能是因为仍然支持3GS。但随着下一代 iPhone 即将发布,我可以想象这将从 Apple 的支持列表中删除。 【参考方案1】:

我不确定它为什么在模拟器中工作,因为我的理解是它不应该。与应用程序中的所有其他图像一样,您应该创建特定于密度的资源并适当地命名它们。

Per the docs,你应该有两张图片,它们应该在你项目的根文件夹中:

    icon.png (57x57) icon@2x.png (114x114)

【讨论】:

+1。 总是在这样的事情上使用文档 - 你不能像在明确要求两个图像时只制作一个图像这样的捷径逃脱,只是因为你不想“经历重复。”

以上是关于为啥视网膜设备上的图标不显示?的主要内容,如果未能解决你的问题,请参考以下文章

为啥使用 AlarmManager.setAlarmClock() 设置时仅在三星 Android 9 设备上不显示闹钟图标?

为啥“标签栏控制器”不显示图标?

为啥大网站做的网站ICO图标能显示,我在线制作却不能显示

phonegap ios加载屏幕不显示

如何在不损失视网膜显示质量的情况下将 UIView 捕获到 UIImage

为啥我的自定义 Google 地图图标在 PC 浏览器中显示,但在 Android 浏览器中不显示?