【问题标题】:Set a UIView width twice another view using autolayout使用自动布局将 UIView 宽度设置为另一个视图的两倍
【发布时间】:2014-07-31 03:54:17
【问题描述】:

在我的屏幕上,我有两个水平靠近彼此的视图。我希望第一个视图的宽度是第二个视图宽度的两倍。

例如,如果 右视图的宽度=200,则 第二个显示为 with=100

当我在自动布局中搜索和查看时,它具有视图之间的对齐和空格选项。它是否也有定义此类关系的选项?

【问题讨论】:

    标签: ios objective-c ipad uiview autolayout


    【解决方案1】:

    您可以通过添加适用于自动布局的手动约束以编程方式执行此操作。我确信使用 InterfaceBuilder 也是一种选择。

    UIView *firstView;
    UIView *secondView;
    [firstView addConstraint:[NSLayoutConstraint constraintWithItem:secondView
                                                          attribute:NSLayoutAttributeWidth
                                                          relatedBy:NSLayoutRelationEqual
                                                             toItem:firstView
                                                            attribute:NSLayoutAttributeWidth
                                                           multiplier:2.0
                                                             constant:0]];
    

    注意这里的乘数是 2.0,它强制将宽度加倍。

    【讨论】:

    • 谢谢@Mike,是否也可以用 xib 添加它?
    • 我自己没有用过xibs,但我不明白为什么不。抱歉,在这种情况下我无法提供更多帮助。
    猜你喜欢
    • 2015-04-10
    • 1970-01-01
    • 1970-01-01
    • 2016-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-14
    • 1970-01-01
    相关资源
    最近更新 更多