【发布时间】:2012-09-04 21:01:41
【问题描述】:
在 Flex 中,有 HGroup 和 VGroup 之类的东西。它们允许水平和垂直对齐内容,元素之间有一些预先指定的间隙。
卡布奇诺有什么相似之处吗?我在任何地方都找不到有关卡布奇诺布局的任何信息(除了自动布局,这不是我需要的)。
【问题讨论】:
标签: cappuccino
在 Flex 中,有 HGroup 和 VGroup 之类的东西。它们允许水平和垂直对齐内容,元素之间有一些预先指定的间隙。
卡布奇诺有什么相似之处吗?我在任何地方都找不到有关卡布奇诺布局的任何信息(除了自动布局,这不是我需要的)。
【问题讨论】:
标签: cappuccino
就像 Primalmotion 所说,没有内置的类可以做到这一点。但是,制作自己的容器视图并不难:https://gist.github.com/3630322
我将把水平布局视图作为练习留给你。
稍微解释一下:
在 Cappuccino 运行循环结束时,每个视图都会做两件事:“布局子视图”和“重绘”自身。基本上,当视图被修改(例如,添加新的子视图)时,视图会设置一个标志,表示它需要更新屏幕上的内容。我们实际上可以通过重写被调用的方法来控制布局的发生方式:
- (void)layoutSubviews;
这非常强大,而且非常高效,因为它意味着视图在运行循环期间只“渲染”一次。
编辑:我应该注意,该代码根本没有经过测试。我相信它应该可以工作,除非有一些奇怪的错字:)
【讨论】:
卡布奇诺没有这样的东西。但是您可以使用自动调整大小的蒙版来做同样的事情。自动布局不能实现什么?
【讨论】: