如何创建水平链接列表,以便通过列表末尾的动态下拉菜单仍然可以获得溢出链接?
我希望能够创建链接列表(或按钮),以便在有足够的水平空间时显示所有链接。当没有足够的水平空间时,溢出的链接将出现在链接列表末尾的下拉菜单中。我正在使用Flex SDK 4.5.1。
这种期望的行为如下所示。
在尝试创建多部件自定义组件,使用自定义布局以及相当广泛但未成功的互联网研究后,我还没有接近可行的解决方案。
如何创建水平链接列表,以便通过主列表末尾的下拉列表提供溢出链接
答案 0 :(得分:2)
经过大量的研究,阅读和许多原型,我研究了一种能够很好地适应这种特定情况的解决方案;尽管如此,组件和皮肤之间的耦合比我想要的要高一些。
我根据spark BorderContainer
创建了一个自定义组件。组件布局大致是:
-- BorderContainer
-- Scroller
-- Group
-- DataGroup
-- Button
-- PopUpAnchor
-- Group
-- Rect
-- DataGroup
第一个DataGroup
包含主要的项目列表。这些是水平显示的。通过覆盖自定义组件中的updateDisplayList
,我可以衡量DataGroup
中的每个项目,并确定它是否适合可用区域。那些不适合的那些不可见(不删除)并添加到不显示列表中。
不显示列表中的项目将添加到第二个DataGroup
。这是下拉列表。在DataGroup
中结束此PopUpAnchor
可以让我添加类似行为的下拉菜单。 Button
用于弹出和关闭第二个DataGroup
。
答案 1 :(得分:1)