在视图导航器转换期间禁用操作栏动画 - Flex Mobile?

时间:2011-11-29 06:51:09

标签: flex flash-builder flex4.5 flex-mobile

有没有人知道如何禁用幻灯片动画,只需让操作栏立即更改为下一个视图包含的任何操作栏,但仍然可以为视图的其余部分执行幻灯片导航。我的操作栏在每个页面上都没有更改,因此在操作栏中重复查看相同的图像重新加载。谢谢!

2 个答案:

答案 0 :(得分:2)

我只需要解决这个问题,因为之前的答案不起作用,而且它并没有真正解决问题。

所以这是修复。

  1. 扩展您想要使用的效果。例如SlideViewTransition
  2. 将以下行添加到扩展类 import import mx.core.mx_internal; 使用命名空间mx_internal;
  3. 在构造函数内部设置值(如果您不希望在运行时更改它)或创建一个setter来将值actionBarTransitionMode修改为= ACTION_BAR_MODE_NONE
  4. 按下或弹出视图时,请使用创建的过渡。
  5. 如果没有回答罗嗦,这就是回答问题的足够信息,但如果您希望获得更多信息,那么您可以在此处找到http://kennethsutherland.com/2012/07/11/stop-the-mobile-actionbar-from-transitioning/

答案 1 :(得分:1)

我自己也有这个问题。 这是我使用的解决方案。

我将navigatorContent,titleContent和actionContent中的所有对象从我的视图移动到了ViewNavigatorApplication。

然后我为ViewNavigatorApplication中的每个视图定义了一个状态。

接下来,我在我从视图中移动的内容上使用了includeIn,并为其分配了正确的状态。

现在,您可以使用视图转换中的事件来更新ViewNavigatorApplication状态。

<s:ViewNavigatorApplication ...>
    <s:states>
        <s:State name="customerView"/>
        <s:State name="productView"/>
    </s:states>
    <s:navigationContent>
        <s:Button id="thisButtonOnlyInCustomerView" includeIn="customerView"/>
    </s:navigationContent>
    <s:actionContent>
        <s:Button id="thisButtonInBothViews" includeIn="customerView, productView"/>
    </s:navigationContent>
</s:ViewNavigatorApplication>

这是ViewNavigatorApplication的一个粗略示例。

由于ViewNavigatorApplication不会滑动,因此您的操作栏内容不会随着您的视图一起滑动。