如何实现不同分辨率的图像

时间:2017-02-13 14:59:24

标签: ios xcode image resolution

我想使用分辨率作为实现iOS应用程序图像的方法。

iOS对于现代设备具有以下分辨率:

iphone 5 / SE:640x1136
iphone 6/7:750x1334
iphone 6/7 +:1242x2208
ipad mini / air:1536x2048
ipad pro:2048x2732


我正在构建的应用仅限景观,所以我正在为每张图片创建5张图片,以匹配必要的分辨率。

我在如何使用图像集在xcode中实现这一点很困难。我可以创建1个图像集,并拥有3个用于iphone的插槽,还有3个用于ipad的插槽。但是,这只能满足我想要创建的5个图像中的3个:

iphone 6/7 @ 2x,iphone 6/7 + @ 3x,以及2x的ipad pro。

有没有办法为iphone 5和更小的Ipads实现额外的插槽?

我还没有找到方法,所以我想我必须使用第二个图像集来添加2个丢失的分辨率图像。这将需要我在代码内,拥有viewcontroller,根据设备的分辨率加载不同的图像。

我对这个额外的要求没问题。我的问题是这是实施这一战略的正确方法吗?你会如何实现这个?什么可能是更好的策略?


注意:我试图避免的是限制使视图看起来像我想要的方式所需的约束数量。我开始使用App,我使用了2张基于宽高比的图像,我认为这很棒,但是iphone 4正在抛弃一切。然后我才知道也许我不应该担心iphone 4已经过时了。所以我要么使用2图像方法从头开始开发UI,要么使用分辨率尝试这个5图像方法。

我是新开发者,所以感谢您的帮助,对不起,如果我太详细了,我希望这也可以帮助其他人,我发现详细绝对是最好的方式。学习。感谢您提供任何信息!!!

2 个答案:

答案 0 :(得分:1)

虽然您无法向.xcassets添加其他广告位,但您可以在.storyboard文件中实施size classes。这是为每个设备设计独特界面的简单方法。使用它你可以为iPhone 4设计漂亮的界面(但是,它在你指向OP时已经过时了)。

答案 1 :(得分:0)

我不确定你想用什么样的图片,但猜测这只是渐变或纯色的背景图片,我想你可以这样做:

a)创建一个包含最高分辨率,中间和最低分辨率的图像集,可能是这样的: 1x:640x1136,2x:1242x2208和3x:2048x2732

b)然后使用此代码使用该图像集,以确保图像正确调整大小到视图:

objectName

希望这有帮助!