gpt4 book ai didi

iphone - 标签栏项目未拾取高分辨率 @2x 图像

转载 作者:行者123 更新时间:2023-12-03 18:24:49 25 4
gpt4 key购买 nike

我有一个 TabBarController,它在 -init 方法中设置选项卡的图像:

self.tabBarItem.image = [UIImage imageNamed:@"tabImage.png"];

我的资源中有一个 tabImage@2x.png 文件。在 iPhone 4 模拟器或手机中,不会拾取高分辨率图像 - 低分辨率版本只是被放大。

有什么想法吗?

编辑:更多信息:如果我尝试显式使用 tabImage@2x.png (或只是 tabImage@2x),那么我看到的选项卡图像会非常大,并且会超出选项卡的范围,就好像它从 60px 缩放到 120px 一样。因此,看起来无论提供什么名称都将被视为scale=1.0 图像。

最佳答案

请注意,模拟器不区分大小写,但设备区分大小写。确保大小写完全匹配。如果您在某个时候更改了文件名的大小写,则需要清理并重建。有时,对于模拟器,我实际上必须删除 Library/Application Support/iPhone Simulator/4.3/Applications/中的文件夹才能进行重建以拾取重命名的图像。

始终使用

 [UIImage imageNamed:@"foo.png"]

这适用于 3.x 和 4.x 设备以及 4.x 模拟器。配备 Retina 显示屏的设备(以及 4.x 模拟器)将神奇地拾取图像的 @2x 版本; iOS 已对此功能和 @2x.png 文件进行了智能修改。

确保将@2x.png 和normal.png 添加到项目文件中,并进行完整的清理和构建。正如其他人提到的,也要验证图像的大小;显然,如果它们不完全是尺寸的 2 倍,它将无法工作(我自己还没有验证过这一点)。

如果您关闭 .png,则它仅适用于 iOS 4.0。因此,如果您正在构建仅限 4.0+ 的应用程序,您可以要求:

    [UIImage imageNamed:@"foo"]

如果您只有一张高分辨率图像,并且想要在 Retina 和非 Retina 设备上使用它,那么您必须将 view.contentMode 更改为缩放以适应。

关于iphone - 标签栏项目未拾取高分辨率 @2x 图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3340465/

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