当前位置: 首页 > 知识库问答 >
问题:

(取消)激活多个NSLayoutConstraints?

钱欣然
2023-03-14

我有一个UIView,有两个子视图:

  • UIActivityIndex atorView
  • UItag

UIView(视图)的大小基于UIActivityIndicatorView(视图)和UIlabel(带布局约束)的大小。

首先,当我要取消激活该约束并激活将视图顶部链接到标签顶部的约束时,会将视图顶部链接到活动指示器视图顶部,我正在执行以下操作:

_labelLayoutConstraintTopToSuperViewTop.active = YES;
_labelLayoutConstraintTopToActivityIndicatorViewBottom.active = NO;

这将导致警告,但当我将此切换到此时:

_labelLayoutConstraintTopToActivityIndicatorViewBottom.active = NO;
_labelLayoutConstraintTopToSuperViewTop.active = YES;

我不再收到警告,直到我再次将视图顶部链接到UIActivityIndex atorView

有没有办法将这些更改放在一个批次或其他什么地方?我是不是误解了什么?我试图使用setNeedsUpdateConstraints、updateConstraintsIfNeeded、setNeedsLayout和layoutIfNeeded,但都没有成功。

我希望我说得够清楚了,谢谢。

共有1个答案

左丘宜然
2023-03-14

如果是这样,我想不出来。

当我激活一个约束时,我会收到一个关于我可能不想要的约束的警告,这是正确的,因为我正在下一行取消激活该约束!

我现在的解决方法是将标签的顶部连接到活动指示器的顶部,并根据需要增加/减少常数。

 类似资料:
  • 当实例的试用期结束时,Navicat Monitor 需要令牌以继续监控该实例。令牌可以作为永久许可证或订阅购买。若要管理你的令牌并许可你的实例,请前往“配置”->“激活令牌密钥和许可实例”。 【注意】永久许可证和订阅方案不能在同一个 Navicat Monitor 上使用。在更改激活方法之前,你需要取消激活令牌密钥或退出你的 Navicat ID。 永久许可证 如果你购买了永久许可证,你将收到一

  • 示例:http://undeniable.info/img/temp_ss.png 我使用的是用户审批系统,因此说您的帐户处于活动状态的消息根本不合适。我们仍然希望我们的用户确认他们的电子邮件,因此我想将邮件“帐户激活”更改为“帐户电子邮件验证”,并将“激活您的帐户”更改为“验证您的帐户电子邮件”或类似的内容。 在我的整个public_html dir中搜索这些帐户激活的消息时,不会返回任何内容,

  • 我对Kafka2.6.0中的消息大小配置有点困惑。但让我们讲一个故事: 我们正在使用由3个节点组成的Kafka集群。到目前为止,消息的标准配置。“zstd压缩”被激活。 相关的代理配置很简单: 此时,生产者配置也很简单: 现在我们想把一个8Mbyte的消息放到一个特定的主题中。这些数据的压缩大小只有200 KB。 如果我将这些数据放入主题中,会出现以下错误: 所以我改变了生产者配置如下: 现在制作

  • 我收到一个错误。当我在谷歌上搜索时,我得到了一些结果,但它们都是针对Android编程的。我使用Windows,Java1.8和Selenium自动测试。 错误 我的原始代码(我没有写,但正在调试,并已工作): 我得到的错误是“没有这样的窗口”。所以我想我可能需要等到窗口数量稳定下来,所以我在点击后和执行windows操作之前添加了以下内容: 正是在这一点上,它进行切换,我得到了 正如我之前提到的

  • 我试图使我的wordpress网站翻译准备好,使用'poedit'。我激活翻译有问题。我想只翻译网站,而不是wordpress系统。我有我的. pot,. po和. mo文件在'语言'文件夹在我的主题目录,我有这个代码在我的functions.php文件: 那么,在poedit程序中保存并翻译所有内容后,如何在我的站点中激活它?我现在正在使用本地主机。

  • 行动时刻 - 激活NULL领域 请按照以下步骤激活NULL域: 编辑FreeRADIUS配置目录下的proxy.conf文件,并更改以下部分: #realm NULL { # authhost = radius.company.com:1600 # accthost = radius.company.com:1601 # secret = testing123 #} 更改为: realm NUL