Codename One:表单更改上的奇怪工具栏动画

时间:2017-03-25 11:44:10

标签: codenameone

由于向表单添加全局工具栏,因此在更改表单时会出现奇怪的动画错误(?)。在FormA上按下一个将调用FormB.show()的Button时,标题会有一个动画,让新形式从右到左让人盯着工具栏区域。谷歌搜索后,我找到了this

enter image description here

这几乎是我在工具栏上面临的问题,唯一的区别是我添加到中心的工具栏Logo是从右到左口吃到它的位置。动画完成后,表单看起来就像它应该的那样。

主要是我这样做:

        Toolbar.setGlobalToolbar(true);

在每个表单中,我在构造函数中执行类似的操作:

    menuForm = new Form(" ", new BorderLayout());
    logo = res_theme.getImage("Logo_Gema_vertikal.png");
    menuForm.getToolbar().getTitleComponent().setUIID("toolbar_image");
    ((Label)menuForm.getToolbar().getTitleComponent()).setIcon(logo);
    menuForm.getToolbar().addCommandToSideMenu(homeCommand);
    menuForm.getToolbar().getMenuBar().addCommand(homeCommand);

如果我不在工具栏中添加徽标,只有命令图标从右向左飞行。是什么造成的?我使用工具栏错了吗?

1 个答案:

答案 0 :(得分:2)

根据您的问题,这是由于使用createSlideFadeTitle的默认动画。您可以通过将当前表单和目标表单的动画更改为createCovercreateSlide来解决此问题:

目前的形式:

currentForm.setTransitionOutAnimator(CommonTransitions.createSlide(CommonTransitions.SLIDE_HORIZONTAL, false, 300));
nextForm.show();

目的地形式:

nextForm.setTransitionOutAnimator(CommonTransitions.createSlide(CommonTransitions.SLIDE_HORIZONTAL, false, 300));
currentForm.showBack();