【问题标题】:Bug with flip animation using Titanium Alloy使用钛合金翻转动画的错误
【发布时间】:2015-01-04 05:32:44
【问题描述】:

我正在使用 Titanium Alloy 构建 iOS 应用程序。我遇到了一个特别令人沮丧的问题,我已经坚持了很长时间。

一旦用户登录,我的目标是让登录窗口动画(翻转)到仪表板窗口。这很好用,除了这个错误。在播放器仪表板栏向下跳到正确位置之前,登录导航顶部栏似乎显示了一秒钟。

在翻转动画完成之前是这样的:

动画完成后会跳转到:

仪表板页面是一个TabGroup,类似于此,初始选项卡的标题为“Player”:

<TabGroup>
    <Tab icon="player_icon.png">
        <Window id="playerTab" title="Player"/>
    </Tab>
</TabGroup>

登录控制器是一个带有登录窗口和注册窗口的 NavigationWindow。

登录表单提交成功后,我创建了索引控制器(仪表板):

Alloy.createController('index', { animate: true, loginSuccess: true });

这里有初始化代码:

if (!AppData.isLoggedIn() && !args['loginSuccess']) {
    // Splash contains the register/login forms
    Alloy.createController('splash');
} else {
    // Check if the user is logging in or resuming previous state
    if(args['animate']) {
        $.index.open({ transition: Ti.UI.iPhone.AnimationStyle.FLIP_FROM_LEFT });
    } else {
        $.index.open();
    }
}

有人知道为什么会出现这个错误吗?我很感激任何帮助!

谢谢!

【问题讨论】:

    标签: javascript ios titanium titanium-alloy


    【解决方案1】:

    想通了!事实证明,在动画完成之前,翻转动画并没有考虑状态栏的高度,所以我为 TabGroup 设置了 20 的初始上边距,并在动画完成后删除了边距。

    现在效果很好!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多