【问题标题】:Xcode 5 Autolayout and making UIView's width equal to heightXcode 5 Autolayout 并使 UIView 的宽度等于高度
【发布时间】:2013-11-03 11:21:00
【问题描述】:

我正在使用自动布局。我在 IB 中有一个 UIImageView。我想让它的宽度等于它的高度。

我学会了如何在 Xcode 4 中完成大部分此类工作。我知道如何以编程方式完成,但这会产生 Apple 尚未修复的错误:

'Auto Layout still required after executing -layoutSubviews. UITableViewCell's implementation of -layoutSubviews needs to call super.'

那么如何在 Xcode 5 Interface Builder 中设置 this 约束?

【问题讨论】:

    标签: ios autolayout xcode5


    【解决方案1】:

    您无法在 Interface Builder 中设置该类型的约束。我也不认为你得到的错误是因为苹果方面的错误,这通常意味着你有一个模棱两可的布局。

    【讨论】:

    • 这不是真的。也许这是 5.1 中的一个新功能,但是如果您在 IB 中控制从视图到自身的拖动,您将获得“纵横比”作为自动布局选项之一。
    • @TimothyMoose:这在 5.1 中确实是新的。根据 Apple 的说法,现在可以使用 Interface Builder 制作全套约束。
    【解决方案2】:

    我尚未对此进行验证,但这里有一个问题可以回答这个问题。

    Auto-Layout Constraint: How to make a view maintains its width/height ratio when resized?

    【讨论】:

      【解决方案3】:

      在 Interface Builder 中,您可以控制从视图到自身的拖动,并且您将获得 Aspect Ratio 作为选项之一(宽度和/或高度也是选项,具体取决于您拖动的方向)。

      默认值是视图的当前纵横比,但您可以在约束的属性检查器中将其自定义为任何您想要的值。

      【讨论】:

        【解决方案4】:

        正如 Timothy Moose 所说,您可以选择在 Xcode 5.1 中保持纵横比。

        确保宽度和高度相同。通过使用控件拖动到自身来添加纵横比约束。

        它会自动确保高度和宽度都保持不变。

        【讨论】:

          猜你喜欢
          • 2014-11-11
          • 1970-01-01
          • 2022-01-10
          • 2020-06-11
          • 1970-01-01
          • 1970-01-01
          • 2017-04-24
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多