spark.layoutsViewMenuLayout ViewMenuLayout 类定义 ViewMenu 容器的布局。The <s:ViewMenuLayout> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:

  <s:ViewMenuLayout 
    Properties
    horizontalGap="2"
    requestedMaxColumnCount="3"
    verticalGap="2"
  />
  
]]>
spark.layouts.supportClasses:LayoutBase ViewMenuLayout 类定义 ViewMenu 容器的布局。菜单可以有多个行,具体取决于菜单项的数量。

requestedMaxColumnCount 属性定义一行中菜单项的最大数量。默认情况下,该属性的设置为 3。

ViewMenuLayout 类按如下定义布局:

  • 如果您定义了 3 或少于 3 个菜单项,其中 requestedMaxColumnCount 属性包含的默认值为 3,则菜单项将显示在单个行中。每个菜单项的大小都是一样的。

    如果您定义了 4 或多于 4 个菜单项,表示将通过 requestedMaxColumnCount 指定更多的菜单项,则 ViewMenu 容器将创建多个行。

  • 如果菜单项的数量可以由 requestedMaxColumnCount 属性进行等分,则每一行将包含相等数量的菜单项。每个菜单项的大小都是一样的。

    例如 requestedMaxColumnCount 属性设置为默认值 3,且您定义了 6 个菜单项。菜单将显示两行,每一行中包含 3 个菜单项。

  • 如果菜单项的数量无法由 requestedMaxColumnCount 属性进行等分,则各个行所包含的菜单项的数量将不同。菜单项的大小将根据一行中菜单项的数量来决定。

    例如 requestedMaxColumnCount 属性设置为默认值 3,且您定义了 8 个菜单项。菜单将显示 3 行。第一行包含 2 个菜单项。第二行与第三行每行包含 3 个项。

您可以通过创建自己的布局类来为菜单创建自己的自定义布局。默认情况下,spark.skins.mobile.ViewMenuSkin 类定义 ViewMenu 容器的外观。要将自定义的 ViewMenuLayout 类应用于 ViewMenu 容器,请先为 ViewMenu 容器定义一个新的外观类。

ViewMenuSkin 类包含 Group 容器的定义,名称为 contentGroup,如下所示:

    <s:Group id="contentGroup" left="0" right="0" top="3" bottom="2" 
        minWidth="0" minHeight="0"> 
        <s:layout> 
            <s:ViewMenuLayout horizontalGap="2" verticalGap="2" id="contentGroupLayout" 
                requestedMaxColumnCount="3" requestedMaxColumnCount.landscapeGroup="6"/> 
        </s:layout> 
    </s:Group>

要应用自定义的 ViewMenuLayout 类,您的外观类应定义一个容器,名称为 contentGroup。容器使用 layout 属性指定自定义的布局类。

spark.components.ViewMenuspark.components.ViewMenuItemspark.skins.mobile.ViewMenuSkinViewMenuLayout 构造函数。 构造函数。 horizontalGap 列之间的水平间距(以像素为单位)。2 列之间的水平间距(以像素为单位)。 verticalGaprequestedMaxColumnCount 在一行中可显示列的最大数量。3 在一行中可显示列的最大数量。 verticalGap 行之间的垂直间距(以像素为单位)。2 行之间的垂直间距(以像素为单位)。 horizontalGap