尽管有限制,搜索栏和按钮在横向视图中放置不当

Search Bar and button placed improperly in landscape view despite constraints

我正在尝试向我的按钮和搜索栏元素添加约束,它们在包括 ipad 在内的多个平台上以纵向模式运行良好,但一旦我切换到横向视图,所有内容都会停止显示并显示约束仅在 Iphone 上发生冲突。有趣的是,Ipad 上的横向模式完全没问题,而且可以按照我的想象工作。我是新手,正在学习,所以可能忽略了一些东西,有人知道为什么会出现这种奇怪的行为吗?

项目没有花哨的结构,只是在 visual studio 上拉出一个默认的单页模板并放下一个按钮和搜索栏。

在下面添加我正在处理的故事板的 gif:

原因:

我们以iPhone 8为例:

iPhone8 的大小是375 × 667。在您的情况下,在纵向模式下,您将按钮垂直间距设置为顶部等于 200。然后将按钮垂直间距设置为底部等于 200。没关系,因为按钮仍然 足够 space(按钮的高度是 667-200-200 = 267)。

处于横向模式时,您会发现没有足够的space按钮。(375-200-200 = -25).所以你会遇到冲突。

Landscape mode on Ipads is completely fine, and works as I imagine it to.

这可能是由于 Ipads 的高度足以支持约束,因为我们知道 iPad 大于 iPhone。

解决方法:

注意我上面提到的原因。您还可以指定按钮的大小。