【发布时间】:2017-12-02 13:39:37
【问题描述】:
这个问题和我之前的问题“Codename One - Transition from FormA to FormB to FormC”有关。
我花了很多时间尝试在 Form 之间进行工作转换,但在真实设备上没有成功(在模拟器上没有问题)。最后,我选择更改逻辑,将三个 Form 之间的转换替换为替换同一个 Form 中的三个 Container。这个想法是 ReplaceAndWait() 方法确保我等待替换结束。但是......同样在这种情况下,代码在 Codename One 模拟器(使用 Android 和 iOS 皮肤)中运行良好,并且不适用于真实设备。更清楚一点:在真实设备上没有“褪色效果”(在 Android 4.x 和 5.x 上测试)。下面的代码有什么问题?
Container container1 = new Container(new BorderLayout(BorderLayout.CENTER_BEHAVIOR_SCALE));
container1.add(BorderLayout.CENTER, FlowLayout.encloseCenterMiddle(myIcon));
Container container2 = new Container(new BorderLayout(BorderLayout.CENTER_BEHAVIOR_SCALE));
container2.add(BorderLayout.CENTER, FlowLayout.encloseCenterMiddle(new Label(" ")));
Container container3 = new Container(new BorderLayout(BorderLayout.CENTER_BEHAVIOR_SCALE));
container3.add(BorderLayout.CENTER, backgroundContainer);
startForm.add(BorderLayout.CENTER, container1);
startForm.show();
container1.getParent().replaceAndWait(container1, container2, CommonTransitions.createFade(2000));
container2.getParent().replaceAndWait(container2, container3, CommonTransitions.createFade(1000));
【问题讨论】:
标签: android ios codenameone