iOS中不同设备上的图像1x、2x和3x问题

iOS中不同设备上的图像1x、2x和3x问题,ios,iphone,xcode,image,autolayout,Ios,Iphone,Xcode,Image,Autolayout,我在图像资源文件中有1x、2x和3x图像,如下面提到的图像 但是,它被放置在所有设备的1x图像上,如下图所示 我使用的是Xcode 7.3和iOS 9.3。我使用自动布局创建了imageview。并设置将中心x与superview对齐和将中心Y与superview对齐 如有任何建议/意见,将不胜感激!谢谢。请确保您的内容模式为UIViewContentModeScaleAspectFill,并且您的UIImageView没有高度/宽度限制。这很好。3x并不意味着您的imageview将显示三

我在图像资源文件中有1x、2x和3x图像,如下面提到的图像

但是,它被放置在所有设备的1x图像上,如下图所示

我使用的是Xcode 7.3和iOS 9.3。我使用自动布局创建了imageview。并设置
将中心x与superview对齐
将中心Y与superview对齐


如有任何建议/意见,将不胜感激!谢谢。

请确保您的内容模式为
UIViewContentModeScaleAspectFill
,并且您的
UIImageView
没有高度/宽度限制。这很好。3x并不意味着您的
imageview
将显示三倍大的图像。它的分辨率是原来的三倍。这意味着如果imageview的大小为
50x50
,则
iPhone6plus(5.5英寸)
需要分辨率为
150x150
的图像。如果将
50x50
分辨率图像设置为此显示器,则它将不显示perfact。就这样。这并不意味着3x图像将显示比原始
imageview
大3倍的图像


然后您还需要图像大小的imageview,然后将
UIViewContentModeScaleAspectFill
content mode设置为imageview,并使用问题中指定的相同约束

正如@Lion很好地回答了这个问题,使用3X并不意味着你的图像高度和宽度将增加3倍

如果要调整图像视图的大小以适应更大的设备,则只需使用适当的自动布局约束即可

如果要使用设备大小(纵横比)更改图像视图的原点和大小,请遵循此操作 当您调整imageview大小时,使用2/3倍大的图像作为imageview,分辨率为2/3倍

检查这些设备

iPhone 4及以上版本@1X

iPhone 4S、5、5S、5C、6、6S、7、7S@2x

iPhone 6+、6S+、7+、7S+@3x


假设在对大屏幕应用约束后,图像视图的大小为(50,50),然后使用大小为150150的图像作为3倍分辨率

约束UIImageView纵横比UIImageView使用的内容模式是什么?创建切片图像时,设计师的计算错误。假设你的图像是1x19*19,然后是2x45*45,再加上3x75*75