繁体   English   中英

如何在代码中彼此相邻添加子视图?

[英]how to add subviews next to each other in code?

我试图将子视图添加到将要彼此相邻放置的窗口中,在调整窗口大小时,它们将被调整大小并保持彼此相邻,我正在使用代码在子视图中添加子视图

NSWindow* window;
[window.contentFrame addSubView:newView];

我想使用约束API来做到这一点:

contentView addConstraint:[NSLayoutConstraint constraintWithItem:prevView
                                                                     attribute:?
                                                                     relatedBy:?
                                                                        toItem:newView
                                                                     attribute:NSLayoutAttributeLeft
                                                                    multiplier:?
                                                                      constant:?]];

如果你想在iOS 9或工作晚于最好的方式来实现自己的目标添加子视图彼此相邻无论是垂直或水平,是使用UIStackView。

UIStackView的类参考和UIStackView的 教程

通常,您不应该将视图直接添加到窗口中。 您几乎应该总是有一个视图控制器,并且应该向其内容视图(而不是窗口)添加视图。

如果要并排放置视图,则需要向视图添加自动布局约束,然后调用layoutIfNeeded。

解释如何设置约束超出了SO答案的范围。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM