Xcode 6:如何使图像视图填充所有设备上的屏幕? 自动布局不工作?

所以我有一个图像视图和一个button。 我需要在所有设备上的图像视图是正确的大小(不要看起来压扁或拉伸),更重要的是我需要它是屏幕的大小。 我需要button保持在所有设备上的相同位置。

回到Xcode 5我记得自动布局解决这个问题,但现在不起作用。 我看了一下https://www.youtube.com/watch?v=G53PuA_TlXk ,试着拖动控件拖到视图控制器上,并将视图横向和纵向居中,但是我无法将其缩放到大小屏幕。 video没有解决这个问题。

有控制拖动,以保持图像视图缩放时,我需要select一个特定的选项? 我该怎么办?

你需要做2件事情:

  1. 正确设置您的约束
  2. select你想要的缩放types。

设置你的约束:

  1. 拖出图像视图并将其大致放置在视图的中心。
  2. 设置您的大小类为任何 任何
  3. 点击图钉图标| - [] - | 在屏幕的底部。
  4. 打开所有四个橙色工字钢。 将这四个常量设置为零。
  5. 取消勾选约束至页边空白checkbox。
  6. 点击添加4个约束

添加新的约束

select你的缩放:

  1. 点击您添加到您的视图控制器的图像视图。
  2. 在右侧的属性检查器中 ,select您的图像。
  3. 视图模式设置为Aspect Fill (根据需要填充整个屏幕上/下或左/右)或Aspect Fit (信箱图像,以便整个图像显示为未隐藏)。

属性检查器


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

文档大纲

点击一个约束,然后在右边的属性检查器中查看它们。 这里是我创build的4个:

前沿约束

后缘约束

顶边限制

底部边缘约束

这对我来说是有效的:

查看模式:
方面填充

作为图像的约束:
将中心Xalignment到:Superview
等宽:Superview

“等宽”属性是将图像缩放到屏幕大小的属性。

如果你想把button放在特定的位置,从它的约束设置到视图,你想要考虑的主要约束是顶部约束和任何左边或右边的约束。 所以你要告诉视图你想把button放在哪一边。

希望这可以帮助。

不知道我是否完全理解你的内容,但是如果你想将一个图像视图拖拽到控制器中,那个图像视图会自动填充整个视图控制器的背景:只需要将图像视图组件拖拽到视图控制器窗口中即可。

事情是:如果您在视图控制器周围看到蓝色边界线,则在拖动之前,图像视图将不会填充视图控制器。

您需要点击视图控制器窗格背景上的任意位置, 以便蓝色边界线消失 ,只有这样,才会拖动图像视图,自动填充整个控制器背景。

如果你发现,使用预览,你的图片变得被挤压或拉伸,然后,只需进入“解决自动布局问题”菜单,然后单击“添加缺less的约束” – 然后所有应resize,以确保所有屏幕上。