iOS:在编辑模式下更改约束

时间:2013-11-30 12:59:30

标签: ios constraints

我有一个表格视图,在单元格的左侧有一个文本字段,在右侧有一个标签。

标签的约束是非常固定的,具有固定的宽度,容器的垂直中心和与容器右边缘的固定距离。

文本字段的约束是可变的。它在容器的左侧具有固定位置,也是容器的垂直中心,并且与容器的右边缘具有固定的距离。但由于没有设置宽度,宽度实际上是可变的,具体取决于我的应用程序使用的设备。

现在,在编辑模式下,我隐藏标签,只显示文本字段。因此,我希望将文本字段的间距减小到容器的右端,因为没有标签。但是我怎么能在代码中做到这一点?所有约束都在XCode中设置,我没有使用代码执行此操作的经验......

编辑:截图 enter image description here

1 个答案:

答案 0 :(得分:1)

如果我正确理解您的问题,您可以从右侧(尾随)约束设置一个IBOutlet到您的UITableViewCell。然后,在UITableViewCell中,更改右(尾随)约束的常量。

实施例

    @property (weak, nonatomic) IBOutlet NSLayoutConstraint *textFieldTrailingSpaceToViewConstraint;

    [self layoutIfNeeded];

    [UIView animateWithDuration:0.3f delay:0 options:UIViewAnimationOptionBeginFromCurrentState animations:^
    {
        [textFieldTrailingSpaceToViewConstraint setConstant: 100];

        [self layoutIfNeeded];

    } completion:nil];