【问题标题】:Hide a view and adjacent gap with autolayout使用自动布局隐藏视图和相邻间隙
【发布时间】:2014-01-08 10:42:25
【问题描述】:

我有以下视图配置:

有时我有一张图片要放在图像视图中,有时我没有。如果没有要显示的图片,我希望Title标签向右延伸,占据图片的整个空间以及标签和图片之间的空隙。我为图像视图的宽度分配了一个“小于或等于”约束,所以我猜如果图像视图的图像属性为空,它可能会得到零宽度。但是如何消除图像视图和标题标签之间的差距?我知道通过为间隙约束定义一个出口可以从代码中实现,但是是否可以通过更简单的方式,也许来自接口构建器?

【问题讨论】:

    标签: ios cocoa user-interface interface-builder autolayout


    【解决方案1】:

    不,这在 XIB 中是不可能的。我已经提交了增强请求(甚至在发货之前就开始了)。多归档!获得的票数越多,发生的可能性就越大。

    我们最终在 ImageView 的子类上添加了一个出口,我们指向我们想要离开的约束,并且在子类中当图像为 nil 时禁用约束(我们使用不同的技巧在不同的地方禁用它,因为没有一种简单的方法)。

    【讨论】:

    • 现在安装和卸载约束非常容易,但我还不知道有一种方法可以完全自动执行“图像为零,所以跳过这个约束”的事情。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-12-18
    • 1970-01-01
    • 2014-04-04
    • 2013-03-06
    • 2013-08-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多