删除视图时约束会发生什么

What happens with constraints when a view is removed(删除视图时约束会发生什么)
本文介绍了删除视图时约束会发生什么的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的问题很简单,但我在文档中找不到任何信息.

The question I have is simple but I couldn't find any information in the documentation.

当视图从视图层次结构中移除(或移动到另一个视图)时,布局约束会发生什么情况?

What happens with layout constraints when a view is removed from the view hierarchy (or moved to another view)?

例如,让我们有容器 C 与子视图 AB.容器 C 包含一些约束.然后我们调用 [A removeFromSuperview].A 的约束会发生什么?

For example, let's have container C with subviews A and B. Container C holds some constraints. Then we call [A removeFromSuperview]. What happens with the constraints for A?

如果我们再次将 A 添加到 C 会发生什么?

What then happens if we add A to C again?

推荐答案

约束被移除.如果再次添加 A,则必须为其创建新的约束,或者如果在删除 A 之前保存约束,则可以重新添加它们.当我做这样的事情时,我会为一个名为 view1 的视图保存这样的约束:

The constraints are removed. If you add A again, you will have to make new constraints for it, or if you save the constraints before you remove A, you can add them back. When I do something like this, I save the constraints like this for a view called view1:

self.portraitConstraints = [NSMutableArray new];
for (NSLayoutConstraint *con in self.view.constraints) {
    if (con.firstItem == self.view1 || con.secondItem == self.view1) {
       [self.portraitConstraints addObject:con];
    }
}

这篇关于删除视图时约束会发生什么的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Why local notification is not firing for UNCalendarNotificationTrigger(为什么没有为UNCalendarNotificationTrigger触发本地通知)
iOS VoiceOver functionality changes with Bundle Identifier(IOS画外音功能随捆绑包标识符而变化)
tabbar middle tab out of tabbar corner(选项卡栏中间的选项卡角外)
Pushing UIViewController above UITabBar(将UIView控制器推送到UITabBar上方)
How can I sync two flatList scroll position in react native(如何在本机Reaction中同步两个平面列表滚动位置)
Get an event when UIBarButtonItem menu is displayed(显示UIBarButtonItem菜单时获取事件)