Xcode 6:如何在所有设备上填充图像视图?自动布局不起作用?

sky*_*guy 45 ios swift xcode6

所以我有一个图像视图和一个按钮.我需要在所有设备上将图像视图设置为正确的尺寸(不要看起来压扁或拉伸),更重要的是我需要将其视为屏幕的大小.我需要按钮才能在所有设备上保持相同的位置.

回到Xcode 5我记得自动布局修复了这个问题,但现在这不起作用.我查看了https://www.youtube.com/watch?v=G53PuA_TlXk并尝试控制拖动到视图控制器并水平和垂直居中视图,但我无法将其扩展到视图的大小屏幕.视频没有解决这个问题.

在控制拖动以保持图像视图缩放时,是否需要选择特定选项?我该怎么办?

vac*_*ama 102

你需要做两件事:

  1. 正确设置约束
  2. 选择所需的缩放类型.

设置约束:

  1. 拖出图像视图并将其大致放在视图的中心.
  2. 将您的大小等级设置为w 任何 h 任何.
  3. 单击|-[]-|屏幕底部的Pin图标.
  4. 打开所有四个橙色工字梁.将四个常量设置为零.
  5. 取消选中" 限制到边距"复选框.
  6. 点击 Add 4 constraints

添加新约束

选择你的缩放:

  1. 单击您添加到View Controller的图像视图.
  2. 在右侧的" 属性"检查器中,选择您的图像.
  3. 将" 视图模式 " 设置为" 纵横填充"(根据需要填充整个屏幕顶部/底部或左/右裁剪)或" 纵横比"(字母框图像,以便显示整个图像未剪切).

属性检查员


您可以查看为您创建的约束.在文档大纲中,您应该在图像视图下看到4个约束:

文件大纲

单击约束,然后在右侧的" 属性"检查器中查看它们.以下是我创建的4个:

前沿约束

后缘约束

顶边约束

底边约束

  • 它不起作用.图像按比例缩放并查看故事板上应如何显示,但继续略微向左,而不是在设备上缩放.此外,当我删除图像视图并尝试制作新视图时,它甚至不会出现在iPhone上.屏幕只是白色. (2认同)

mal*_*r53 12

这对我有用:

查看模式:
Aspect Fill

作为图像的约束:
将中心X对齐:Superview
等宽到:Superview

"相等的宽度"属性是图像缩放到屏幕的尺寸的一个.

如果要将按钮放在特定位置,将约束设置为视图,则要考虑的主要约束是顶部约束以及任何左或右约束.因此,您要告诉视图您希望将按钮放置在其侧面的位置.

希望这可以帮助.

  • +1让我开始,但对于我的图像,我最终通过了编辑器>解决自动布局问题下的重置选项,并选择了视图控制器。 (2认同)