将UIImageView与iOS中所有支持的分辨率放在一起

时间:2018-03-12 17:32:23

标签: ios uiimageview uistoryboard nslayoutconstraint xcode-storyboard

我想尝试使用Storyboard在iOS项目的不同位置放置两个不同的UIImageView。在一个分辨率中,我可以正确设置,但如果我检查其他分辨率,那么它看起来不正确。

我绝对是iOS应用程序开发的新手,所以犯了小错误。

我实际上已经在iPhone8 Plus分辨率下制作了我的布局和图形,这是我在Storyboard中设计的页面。

enter image description here

根据我的设计布局,它看起来很合适但是当我在iPhone5s中切换我的布局时,我得到了可怕的结果。 请查看下图:

enter image description here

根据我的理解,我也设置了一些约束。你可以在两张图片中看到。目前我只想担心UIImageView的缩放和定位的页眉和页脚标识。如果这两个视图得到解决,那么我也将管理其他视图。

修改

这里有页脚约束:

enter image description here

项目中已经存在@ 1x,@ 2x和@ 3x图像资源,但根据我的想法,它未被检测到。

enter image description here

在创建UI屏幕方面,我遵循了反向路径。实际上我已经设计了1080x1920分辨率的图形,所以我的@ 3x分别为@ 2x和@ 1x资源减少了每个对象的大小。

请给我一些帮助。

2 个答案:

答案 0 :(得分:0)

以1x格式设置图像大小并以3x格式添加图像,例如图像名称为xyz.png,然后保存为xyz@3x.png,xcode将自动在您的应用上使用此图像。你只需要在1x中计算图像的大小,将其设置为视图,一切都会正常工作。 请检查一下,如果它不起作用,请告诉我。

答案 1 :(得分:0)

您只需要为您的徽标UIImageView设置约束:

对于logo_main:

top = 20(您的值),bottom = 20,leading = 20,trailing = 20

enter image description here

对于MainFooterLogo:

top = 0,bottom = 0,leading = 8,trailing = 8

enter image description here

并将UIImageView的内容模式设置为Aspect Fit:

enter image description here

您的问题将得到解决,但您需要更多约束,并且可能是中间容器视图的UIScrollView。