可以子视图自动调整自己的超级视图自动布局?
如果您有一个没有约束的视图,并且该视图具有大小相等的左,右,顶部和底部约束的子视图,则如果子视图的大小增加,则超级视图的大小可以自动增加以适应这些约束?
谢谢。
是的,你可以做到这一点,它可以做到没有任何代码或子类。 例如,如果您在视图中embedded了一个标签(numberOfLines = 0),并且它对superview的所有边以及宽度约束都有约束,那么标签和它的superview将会垂直展开把一个大string放在标签中。 superview应该仍然需要一些限制,比如superview的左上angular,但是没有大小限制。
如果superview是UIView的自定义子类,可以这样做。 您可以重写intrinsicContentSize以返回与您的超级视图大小相关的大小。 然后,当子视图的大小改变时,它可以使内在内容大小无效。 我通常在superview的layoutSubviews部分执行此操作。
- UICollectionView – iOS 10 – iPhone 6 Plus模拟器崩溃,但适用于真实设备
- 使用AutoLayout约束来隐藏UIView
- EXC_BAD_ACCESS(SIGSEGV)
- activateConstraints:和deactivateConstraints:在IB中创build的约束旋转后不保留
- 我添加约束条件到底是哪个超级视图?
- UITableViewCell内部的UIStackViews内部的UILabel有时会被截断
- iOS:多个button的自动布局
- UILabel文本不会使用自动布局自动resize
- 在iOS 7上的UITableViewCell之间绘制自定义分隔线