2012-04-20 74 views
1

我有一个ViewNavigator,我想隐藏操作栏。 creationComplete监听器成功地删除操作栏,但一旦另一个视图被推动,操作栏会重新出现。我怎样才能隐藏它?在ViewNavigator上隐藏操作栏 - Flex

<?xml version="1.0" encoding="utf-8"?> 
    <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
      xmlns:s="library://ns.adobe.com/flex/spark" 
      creationComplete="application1_initializeHandler(event)"> 
    <fx:Script> 
     <![CDATA[ 
      import mx.events.FlexEvent; 

     protected function application1_initializeHandler(event:FlexEvent):void 
     { 
      viewNav.hideActionBar(false); 
      addEventListener(MouseEvent.CLICK, pushView); 
     } 

     protected function pushView(event:MouseEvent):void 
     { 
      viewNav.pushView(FirstView); 
     } 
    ]]> 
    </fx:Script> 
    <s:ViewNavigator id="viewNav" top="0" bottom="0" left="0" right="0" firstView="FirstView" /> 
</s:Application> 

回答

7

View classactionBarVisible属性。您可以在每个/所有视图上将其设置为false,然后它不会显示。也许我错过了它,但是我没有看到在ViewNavigator本身的全球范围内执行此操作的方法,而不是hideActionBar()

<?xml version="1.0" encoding="utf-8"?> 
<s:View actionBarVisible="false" > 
</s:View> 
0

您是否尝试将隐藏代码放在鼠标处理程序中?

protected function pushView(event:MouseEvent):void 
    { 
     viewNav.pushView(FirstView); 
     viewNav.hideActionBar(false); 
    } 
0

要全局隐藏动作条刚刚过去的这个在主应用程序MXML或在样式文件:

<fx:Style> 
    @namespace s "library://ns.adobe.com/flex/spark"; 
    s|View 
    { 
     actionBarVisible:false 
    } 
</fx:Style>