2010-09-07 101 views
0

我正在更新应用程序,以在新iPhone 4上显示高分辨率图像。我的原始图像(在UIImageView中)是100×100像素,因此我更新了新的图像为200×200像素。iPhone 4 - 高分辨率图像模糊

我知道@ 2x约定,但是我的图片并不存储在我的项目本地 - 它们从网上检索并用于iPhone 4和其他iPhone/iPod touch,因此它们不包含@ 2x in他们的名字。

有什么特别的我需要正确显示这些图像吗?我需要根据设备发送不同的版本吗?或者我可以发送高分辨率版本并设置某种比例?

我认为可能会导致这个问题的一个问题是我正在使用Base SDK 3.2,它可能不知道如何处理比iPhone 4预先约会更高密度的显示器。我认为这可能是一个问题,因为我的问题似乎根植于苹果的文档“点VS像素”的讨论和图像的比例因子:

http://developer.apple.com/iphone/library/documentation/iphone/conceptual/iphoneosprogrammingguide/SupportingResolutionIndependence/SupportingResolutionIndependence.html

的思考?

非常感谢!

回答

0

我也有过这个问题,这个问题与我应用于图像的剪贴蒙版有关。但是,我使用4.0基本SDK,3.0部署目标。我所做的是检查我传递给mainScreen-[UIScreen scale]方法,看看它是否为2.0(如果它实际上回应了它)。如果是这样,我知道这个缩放比例是2.0,然后我会调用适当比例的剪贴蒙版的方法。问题并没有通过适当比例的数据传递,问题在于调整核心图形代码来解释规模;当图像本身处于另一个尺度时,它将以一个比例应用剪贴蒙版。如果你向我们展示你在做什么的代码,我可以修改我的答案,向你展示可能对你有帮助的代码。

+0

嗨Jer - 我在我的代码中做的所有事情是使用调用特殊函数(image = [specialFunction:objID])从Web上检索图像。我设置了返回UIImage,然后将我的UIImageView设置为该图像(myUIimageView.image =图像)。 – Max 2010-09-07 05:34:18

+0

你能告诉我们什么'specialFunction:'在做什么? – jer 2010-09-08 12:11:22