首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >删除/修改代码中的自动删除约束

删除/修改代码中的自动删除约束
EN

Stack Overflow用户
提问于 2014-11-07 13:49:57
回答 3查看 1.2K关注 0票数 1

背景:--我正在使用接口生成器构建一个论坛,其中视图控制器中有一个表视图,外部有一个输入附件视图。在运行时,输入附件视图将被添加到表视图中,并成为一个类似信使的输入条。

我试图通过更改高度约束来实现输入附件视图上的自动调整功能(通常在消息传递应用程序中可以看到)。但是,无法在接口构建器中创建输入附件视图的高度约束,所以我只是在代码中添加了它们。

代码语言:javascript
运行
复制
NSLayoutConstraint *inputAccessoryConstraint = [NSLayoutConstraint constraintWithItem:self.inputAccessoryView
                                                                            attribute:NSLayoutAttributeHeight
                                                                            relatedBy:NSLayoutRelationEqual
                                                                               toItem:nil attribute:NSLayoutAttributeNotAnAttribute
                                                                           multiplier:1.0
                                                                             constant:100];

[self.inputAccessoryView addConstraint:inputAccessoryConstraint];

并收到以下警告:

代码语言:javascript
运行
复制
Unable to simultaneously satisfy constraints.
...
(
"<NSLayoutConstraint:0x7fa5a413f450 V:[UIView:0x7fa5a264f8d0(100)]>",
"<NSLayoutConstraint:0x7fa5a2483890 '_UIKBAutolayoutHeightConstraint' V:[UIView:0x7fa5a264f8d0(44)]>"
)

问题是,我的新约束与运行时中添加的一个autolayout约束相冲突。如何删除/修改代码中的autolayout约束?

EN

Stack Overflow用户

发布于 2014-11-07 14:52:03

在添加您的(100)之前,您可能希望删除现有的高度约束(44)。但是,您也可以只编辑现有的约束:

下面的块是浏览inputAccessoryView的约束并找到高度约束。然后将值设置为100,而不是44。

代码语言:javascript
运行
复制
for (NSLayoutConstraint* constraint in YOURINPUTACCESSORYVIEW.constraints) {
    if ([NSStringFromClass([NSLayoutConstraint class]) isEqualToString:NSStringFromClass([constraint class])])
    {
        if (constraint.firstAttribute == NSLayoutAttributeHeight || constraint.secondAttribute == NSLayoutAttributeHeight)
        {
            constraint.constant = 100;
        }
    }
}
票数 1
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26802750

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档