2017-06-23 70 views
1

我是iOS新手,似乎很难处理约束。我在视图中添加了一个textfield,并试图将它放置在视图上的位置。我使用故事板右下角的“添加新约束”按钮添加了一些约束,但在模拟器上运行时,textfield位置仍然关闭。有人能帮助我吗?AutoLayout约束已应用但无法正常工作

更新: 我尝试添加这些限制,但仍然没有运气

Storyboard

Simulator

+0

你应该在iPhone 7 plus模拟器上运行它。 –

+0

@SourLeangChhean在iphone 7模拟器上运行它有一个特别的原因。我拥有一个5并在该设备上测试该应用程序 –

+0

1.您是否还在代码中执行任何操作? 2.您的第一张图片:您可以​​拍摄另一张截图,还可以展开左侧窗格,以便我们完全看到这些限制吗?现在我们只能看到他们一半? – Honey

回答

0

你需要右键点击你的故事板的按钮,拖动约束线,相关设备然后编辑它。 demo

您还可以通过代码添加约束条件,如vfl或masonry。

0

auto layout每个视图需要计算position(x,y)size(height, width),使我们不得不限制添加到特定视图

例如:

myTextField将我想对齐与视图顶部从顶部的视角和左边的10px,右边的10px,高度是100px

给出约束条件,如在视图中放置文本文件并添加顶部约束和设置值10,添加前导约束集10,添加激发约束 将其设置为10,最后添加高度约束100

然后,文本字段将在视图顶部与任何设备上的所需帧对齐。

enter image description here

+0

请看我更新的帖子。 –

+0

@AhteshamKhan你能解释一下你想放置文本框的位置吗?它旁边是下一个按钮吗? –

1

所以,对于一些奇怪的原因,它开始工作后,我改变了我的“视图”选项,从iPad到iPhone。它不是一个合适的解决方案,但我只是暂时使用它。

+0

它在iPhone模拟器中无法正常工作的原因在iPad模拟器中看起来不错,这是由于底部的限制。当iPhone屏幕上应用了这么大的距离时,该字段被推离屏幕。为了证明这一点,请删除所有约束,并简单地添加水平中心和垂直居中约束。重置您的高度和宽度约束。无论使用的模拟器如何,该字段都会出现。 –

+0

@MartinMuldoon我试过这样做,它仍然很奇怪,并没有显示出我想要的位置。见上面更新的问题。任何想法我做错了什么? –

+0

@MartinMuldoon仍然没有运气。检查上面的截图。 –

0

您正在使用'水平中心和垂直中心'约束,当您在其他设备上运行应用程序而不是其他设备时,您将使用该设备进行设计,因为垂直中心和水平中心将会不同屏幕。

实现此目的的用户顶部,底部,拖尾和前导约束。

相关问题