包 | spark.layouts |
类 | public class ViewMenuLayout |
继承 | ViewMenuLayout LayoutBase OnDemandEventDispatcher Object |
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4.5 |
运行时版本: | AIR 2.5 |
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
属性指定自定义的布局类。
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" />
相关 API 元素
属性 | 由以下参数定义 | ||
---|---|---|---|
clipAndEnableScrolling : Boolean
如果为 true,指定将子代剪切到视区的边界。 | LayoutBase | ||
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
dropIndicator : DisplayObject
该布局在拖放操作过程中用于拖放指示符的 DisplayObject。 | LayoutBase | ||
horizontalGap : Number
列之间的水平间距(以像素为单位)。 | ViewMenuLayout | ||
horizontalScrollPosition : Number
组件的坐标系中视域原点(默认值为 (0,0),与组件的左上角相对应)的 x 坐标。 | LayoutBase | ||
requestedMaxColumnCount : int
在一行中可显示列的最大数量。 | ViewMenuLayout | ||
target : GroupBase
此布局将测量其元素、调整其元素的大小并定位其元素的 GroupBase 容器。 | LayoutBase | ||
typicalLayoutElement : ILayoutElement
当请求固定的行/列大小而未指定某个特定大小时,由布局所使用。 | LayoutBase | ||
useVirtualLayout : Boolean
一个容器可包含任意数量的子项。 | LayoutBase | ||
verticalGap : Number
行之间的垂直间距(以像素为单位)。 | ViewMenuLayout | ||
verticalScrollPosition : Number
组件的坐标系中视区的原点(默认值为 (0,0),与组件的左上角相对应)的 y 坐标。 | LayoutBase |
方法 | 由以下参数定义 | ||
---|---|---|---|
构造函数。 | ViewMenuLayout | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。 | OnDemandEventDispatcher | ||
为指定的 dragEvent 在放置目标的数据提供程序中计算拖放位置。 | LayoutBase | ||
如果 useVirtualLayout 为 true,则当布局目标改变时,布局目标可以使用此方法来清除已缓存布局信息。 | LayoutBase | ||
将事件调度到事件流中。 | OnDemandEventDispatcher | ||
在已添加布局元素之后且在验证目标的大小和显示列表之前,由目标调用。 | LayoutBase | ||
必须在已删除布局元素之后且在验证目标的大小和显示列表之前,由目标调用此方法。 | LayoutBase | ||
如果索引无效、相应的元素为 null、includeInLayout=false,或者如果此布局的 target 属性为 null,则将指定元素的布局界限返回为 Rectangle 或 null。 | LayoutBase | ||
返回对水平滚动位置的更改以处理不同的滚动选项。 | LayoutBase | ||
getNavigationDestinationIndex(currentIndex:int, navigationUnit:uint, arrowKeysWrapFocus:Boolean):int
确定根据 NavigationUnit、基于当前处于焦点的项目和用户输入要导航到哪个项目的委派方法。 | LayoutBase | ||
计算所需的 verticalScrollPosition 和 horizontalScrollPosition delta,以将处于指定索引处的元素滚动到视图中。 | LayoutBase | ||
返回对垂直滚动位置的更改以处理不同的滚动选项。 | LayoutBase | ||
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。 | OnDemandEventDispatcher | ||
表示对象是否已经定义了指定的属性。 | Object | ||
隐藏由 showDropIndicator() 方法创建的先前显示的拖放指示符,将其从显示列表中删除,还将停止拖放滚动。 | LayoutBase | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
基于目标的内容测量其默认大小,并(可选)测量目标的默认最小大小。 | LayoutBase | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
从 EventDispatcher 对象中删除侦听器。 | OnDemandEventDispatcher | ||
设置循环操作动态属性的可用性。 | Object | ||
根据指定的拖放位置调整拖放指示符的大小、确定其位置并设置其父代。 | LayoutBase | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
返回指定对象的字符串表示形式。 | Object | ||
调整目标的元素的大小并定位这些元素。 | LayoutBase | ||
在其 updateDisplayList 的结尾由目标调用,以使布局更新其 scrollRect。 | LayoutBase | ||
返回指定对象的原始值。 | Object | ||
检查是否用此 EventDispatcher 对象或其任何祖代为指定事件类型注册了事件侦听器。 | OnDemandEventDispatcher |
horizontalGap | 属性 |
requestedMaxColumnCount | 属性 |
verticalGap | 属性 |
ViewMenuLayout | () | 构造函数 |
public function ViewMenuLayout()
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4.5 |
运行时版本: | AIR 2.5 |
构造函数。
Tue Jun 12 2018, 11:04 AM Z