ViewMenu 容器定义 View 容器中的菜单。每个菜单项都使用 ViewMenuItem 控件进行定义。用户按设备的菜单按钮时,应用程序容器会自动创建并显示 ViewMenu 容器。还可以使用 ViewNavigatorApplicationBase.viewMenuOpen 属性通过编程方式打开菜单。
下图显示了屏幕底部带有五个菜单项的 ViewMenu:
ViewMenuLayout 类定义菜单的布局。或者,可以创建自己的自定义布局类。
使用 View.viewMenuItems 属性定义菜单项,如下例所示:
<s:View xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
title="Home">
...
<s:viewMenuItems>
<s:ViewMenuItem label="Add" click="itemClickInfo(event);"/>
<s:ViewMenuItem label="Cancel" click="itemClickInfo(event);"/>
<s:ViewMenuItem label="Delete" click="itemClickInfo(event);"/>
<s:ViewMenuItem label="Edit" click="itemClickInfo(event);"/>
<s:ViewMenuItem label="Search" click="itemClickInfo(event);"/>
</s:viewMenuItems>
</s:View>
请注意,不要在 MXML 中显式定义 ViewMenu 容器。ViewMenu 容器会自动创建,以包含 ViewMenuItem 控件。
items
查看示例
样式为常见样式,或与特定主题关联。如果为常见样式,则可以用于任何主题。如果样式与特定主题关联,则只有应用程序使用该主题时才能使用该样式。
caretIndex:int
当前处于插入标记状态的菜单项。值 -1 表示没有项目处于插入标记状态。
默认值为 -1。
public function get caretIndex():int public function set caretIndex(value:int):void
items:Vector.<ViewMenuItem>
要显示在 ViewMenu 容器中的 ViewMenuItem 控件的矢量。
public function get items():Vector.<ViewMenuItem> public function set items(value:Vector.<ViewMenuItem>):void
<?xml version="1.0" encoding="utf-8"?>
<s:View xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
title="Home">
<fx:Script>
<![CDATA[
// The event listener for the click event for
// the ViewMenuItem controls.
private function itemClickInfo(event:MouseEvent):void
}
]]>
</fx:Script>
<!-- Define the ViewMenuItem controls. -->
<s:viewMenuItems>
<s:ViewMenuItem label="Add" click="itemClickInfo(event);"/>
<s:ViewMenuItem label="Cancel" click="itemClickInfo(event);"/>
<s:ViewMenuItem label="Delete" click="itemClickInfo(event);"/>
<s:ViewMenuItem label="Edit" click="itemClickInfo(event);"/>
<s:ViewMenuItem label="Search" click="itemClickInfo(event);"/>
</s:viewMenuItems>
<s:VGroup paddingTop="10" paddingLeft="10">
<s:TextArea id="myTA" text="Select a menu item"/>
<s:Button label="Open Menu"
click="mx.core.FlexGlobals.topLevelApplication.viewMenuOpen=true;"/>
<s:Button label="Close Menu"
click="mx.core.FlexGlobals.topLevelApplication.viewMenuOpen=false;"/>
</s:VGroup>
</s:View>
<?xml version="1.0" encoding="utf-8"?>
<s:ViewNavigatorApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
firstView="views.ViewMenuExampleHome">
</s:ViewNavigatorApplication>









