我希望有一个60x60的UIImageView,可以在登录界面显示我的徽标。
在我的图片资源中,我有1x的60x60 .png和2x的120x120 .png。然而,每当我显示这些图像时,某些东西似乎有点过时了。似乎有一点点但显而易见的模糊。
我决定将120x120图像作为iPhone 6 Plus的3倍图像进行测试,并惊讶地发现它看起来很完美并且根本不模糊。这似乎与我相加,因为120x120像素不是60x60的3倍。
也许我只是不了解图像资产的工作原理,但我如何才能正确地对待所有网格?
答案 0 :(得分:1)
您可以尝试更改内容模式,也可以尝试使用UIViewContentModeCenter。
另一种选择是检查故事板,如果使用约束,则不要在UIImageView上设置任何宽度/高度约束。这将使图像视图调整大小以适应内部的资产集。
答案 1 :(得分:0)
当你将UIImageView的内容模式设置为UIViewContentModeScaleToFill
时,图像将自动调整大小以适应UIImageView,这可能会引入一些非像素完美的工件。
将模式设置为UIViewContentModeTopLeft
,使其不会缩放,您可能会看到UIImageView与图像的大小(以磅为单位)不完全相同。
检查UIImageView的属性,autoresizingmask或autolayout或您的代码,以确保UIImageView的尺寸正确。
另外,请确保使用正确的文件naming convention(例如image1@2x.png
)并加载图片,而不使用imageNamed:
或imageForResource:
指定后缀。如果iOS没有找到当前屏幕比例的图像并且必须缩放图像,则会得到相同的工件。