【问题标题】:Xcode Auto Layout Resizing IssueXcode 自动布局调整大小问题
【发布时间】:2017-07-02 06:59:53
【问题描述】:

我正在尝试在我的 Xcode 应用程序上的多个按钮和功能上使用自动布局,但是当我尝试自动布局其中一个按钮时,它的大小会发生变化

如图所示:http://imgur.com/a/EuBBe

我在标签上使用过它,有时它不会改变它的大小,但在其他的时候它会改变。

我怎样才能阻止这种情况发生?

谢谢

【问题讨论】:

  • 确保在开始前清理所有约束
  • 到目前为止,您刚刚提到了按钮的位置,因此它根据您的位置和一些默认大小进行布局。但是,当您提供它的高度和宽度或尾随和底部时,在这种情况下,它不会像现在一样改变它的大小。
  • 我在上一个项目中做了非常相似的事情。如果您对 Lawliet 的回答不满意,将发布答案
  • @DarkInnocence 如果可以的话就完美了

标签: ios xcode autolayout


【解决方案1】:

添加宽度和高度约束以获得所需的按钮大小。

【讨论】:

  • 我试过了,但是我需要按钮随着屏幕的大小而变化,否则它们会重叠并且无法使用
【解决方案2】:

对于 Xcode 9、Swift 4,LayoutGuides 已弃用。如果您使用的是 Swift 3,我建议您只使用 Auto-Resizing 遮罩来防止 iOS 11 出现任何问题。当包含在父视图中时,约束将继续用于子视图对象。该文档指出它已被 iOS 7-11 弃用;但是,我在整个 iOS 10 中都使用了布局指南,并且从未出现任何错误或警告。 iOS 11 中出现警告。

请参阅此处的文档: https://developer.apple.com/documentation/uikit/uiviewcontroller

在此处查看图片: Death to Layout Guides

【讨论】:

    【解决方案3】:

    首先清除之前应用的所有约束。给出如下约束:- 1) 领先 2) 热门 3) 纵横比 4) 与 Superview 等宽:-假设您的 Button 宽度为 100,如果您的 iPhone 尺寸为 5.5S,则等宽:- 乘数应为 100:320

    所以,当设备尺寸改变时,它会是动态的,此时按钮的尺寸也会根据设备而变化

    【讨论】:

      猜你喜欢
      • 2011-01-11
      • 2015-08-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多