如何为下拉列表创建flex组合框

时间:2013-03-25 10:11:47

标签: list flex drop-down-menu combobox

我想创建一个flex组合框,但是需要分组显示,并且有三个级别,如下所示。有这种经历的人吗?

字体下拉列表

  1. 中国:

    1.1。简体中文:

    1.1.1。方松

    1.1.2。开平

    1.1.3。启

    1.1.4。曲

    1.2。繁体中文:

    1.2.1。启

    1.2.2。宋

  2. 日本:

    2.1。日本平成Kaku Gothic

    2.2。日本平成Maru哥特式

    2.3。日本平成Mincho

  3. 韩国:

    3.1。韩国哥特式

    3.2。韩国的Myengjo

1 个答案:

答案 0 :(得分:0)

步骤1:创建具有某种层次深度感的模型类

最简单的形式是这样的:

public class Node {

    public var label:String;
    public var depth:int;

}

第2步:创建一个自定义ItemRenderer,将depth转换为可视填充

<!-- HierarchicalItemRenderer.mxml -->
<s:ItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
                xmlns:s="library://ns.adobe.com/flex/spark">

    <s:Label id="labelDisplay" left="3 + (10 * data.depth)"/>

</s:ItemRenderer>

第3步:使用自定义ItemRenderer

<DropDownList itemRenderer="path.to.HierarchicalItemRenderer"/>

IList Node个实例作为dataProvider。