【问题标题】:How do I increase size of views depending on screen size如何根据屏幕大小增加视图大小
【发布时间】:2015-02-15 13:39:24
【问题描述】:

我使用 Xcode 已经有一段时间了,我喜欢使用情节提要,但自从引入了更宽的屏幕后,我一直在努力理解如何实现我想要的布局。

示例 1;

例如,假设我使用的是 320x580 的情节提要,在屏幕顶部我有 6 个 UIButton,每个都是 40x40 且间隔均匀。

我想要实现的是按钮的大小随着显示它们的屏幕变宽而增加的能力。

我尝试过以不同方式使用各种约束,但完全没有效果。

示例 2;

我有一个单元格为 320 宽的 UITableview。我在其中放置了一个覆盖整个单元格的 UIView。 我固定前导空格、尾随空格、顶部和底部,但如果我在更宽的屏幕上显示它,它总是 320 宽,即使我根本没有固定宽度!

如何使用自动布局和约束?在 Xcode 5 中似乎要容易得多。

感谢您的宝贵时间。

【问题讨论】:

    标签: ios xcode interface-builder constraints


    【解决方案1】:

    示例 1:

    如果您希望按钮变宽,您应该对边缘和每个按钮之间进行约束,并使所有这些间距约束具有相同的大小(或至少使按钮之间的所有间距约束)。如果您随后将所有按钮设置为相同大小,但没有固定大小,它们将等距分布,并在更宽的屏幕上变得更大。

    示例 2:

    我不知道你在这里做了什么,因为假设表格视图本身固定在其父视图的两侧,那应该可以工作。

    【讨论】:

      【解决方案2】:

      你可以给与宽度相等的约束作为superView。

      var widthConstraint = NSLayoutConstraint(item: item, attribute: .Width, relatedBy: .Equal, toItem: self.view, attribute: .Width, multiplier: 1.0, constant: 0)
          self.view.addConstraint(widthConstraint);
      

      你可以给与高度相等的约束作为superView。

              var heightConstraint = NSLayoutConstraint(item: label, attribute: .Height, relatedBy: .Equal, toItem: self.view, attribute: .Height, multiplier: 1.0, constant: 0)
          self.view.addConstraint(heightConstraint);
      

      您可以根据需要更改乘数值以更改宽度和高度约束

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-12-17
        • 2018-01-20
        • 1970-01-01
        • 2017-12-15
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多