【发布时间】:2014-05-07 08:12:50
【问题描述】:
我有一个窗口,可以在其中水平添加两个子视图。在每个子视图中,我放置了一个可变数量的子视图,这些子视图由一个垂直滑块、一个旋转 90 度并放置在滑块左侧的文本字段和另一个文本字段组成,位于滑块下方。滑块子视图的约束在代码中完成,父视图都在 IB 中完成。当我向左侧窗口添加的滑块视图超出子视图的默认大小时,它会水平调整大小并强制窗口的内容视图(和窗口)也水平调整大小。太好了,这正是我想要的。但是,如果我添加的滑块子视图超出了右侧子视图的容量,它们就会被挤压在一起,并且子视图不会像左侧那样展开。我使用将此类转换为支持 NSViews 而不是 UIVews 的代码来布局滑块视图:
UIView+AutoLayout1:https://github.com/jrturton/UIView-Autolayout
左右子视图的约束大致相同。我不明白为什么右视图没有像左视图那样调整大小。
以下是演示问题的示例项目的链接: SliderTest
有人帮我解决这个问题吗? 另外,我认为我的滑块视图可能需要做一些工作: 当使用 setFrame(Center)Rotation 旋转视图时,顶部、右侧、底部和顶部边缘是否保持相同的边缘,或者它们是否反映了旋转视图的新方向? 谢谢
【问题讨论】:
-
去掉两个子视图之间的约束后,我看到右边的子视图向中心展开。我想这是预期的行为,但我需要正确的子视图向右展开并强制窗口相应地展开。我会继续玩耍和谷歌搜索。
标签: cocoa autolayout