我们如何根据项呈示器的状态减小列表的高度

时间:2010-01-20 07:50:40

标签: flex itemrenderer schedule

我们要求显示预约空档列表。因此,每个小时的时间表都有一组10分钟的时间段。要求是,如果我们在8:00,9:00小时位置点击箭头按钮,则小时位的布局应从垂直列表更改为水平列表。

为此,我们对系统进行了如下建模:

ScheduleComponent - >(包含) - >清单(时间表) HourViewComponent是一个项目渲染器,它使用插槽列表(8:00小时的插槽列表)根据可用的约会显示10分钟的插槽。

对于Slots List,我们有一个Slot View Component作为Item Renderer。

现在的问题是,当我们点击8:00插槽时,我们可以将HourViewSlot从VerticalState更改为Horizo​​ntal状态。但容器高度在最小化状态下不会崩溃。它占据与垂直布局相同的大小!

我们尝试使用 variableRowHeight 属性。

我们尝试在项目渲染器 按钮单击事件处理程序 中设置 rowHeight ,但这会导致所有项目列表行高度发生变化。我们只想改变当前的小时高度。

我们现在不确定List是否是正确的组件。请帮忙。 link text

1 个答案:

答案 0 :(得分:0)

我认为您使用List,项目渲染器和variableRowHeight走在正确的轨道上。我怀疑HourViewComponent没有重新计算其高度或重新计算错误。可能是您在事件处理程序中没有执行任何操作会触发invalidateSize调用,或者以某种方式以错误的顺序计算大小。