是 parent 让我远离透明

Is a parent keeping me from transparency

我有一个切换屏幕的动画(来自 Angelas 著名的 youtube 视频)。

Timeline fade = new Timeline(
  new KeyFrame(Duration.ZERO, new KeyValue(opacity, 1.0)),
  new KeyFrame(new Duration(500), (ActionEvent t) -> {
    getChildren().remove(0);
    getChildren().add(0, schermen.get(naam));
    Timeline fadeIn = new Timeline(
      new KeyFrame(Duration.ZERO, new KeyValue(opacity, 0.0)),
      new KeyFrame(new Duration(600), new KeyValue(opacity, 1.0)));
    fadeIn.play();
}, new KeyValue(opacity, 0.0)));
fade.play();

现在这 1 个屏幕淡出,它们被切换,新的屏幕淡入。现在当 2 个屏幕具有相同的尺寸时,这没问题,一切看起来都很流畅。但是当你的新屏幕尺寸不同时,这看起来不太好。

我正在考虑为此找到一个甜蜜的过渡。所以我想让我们淡出旧屏幕。拆下旧屏幕。将新屏幕设置为不可见,将其最大化,然后才淡入。这样用户就不会注意到太多过渡。

所以我将旧屏幕淡化为不可见:

            if (!getChildren().isEmpty()) {
            Timeline switchscreenmaximize = new Timeline(
                    new KeyFrame(Duration.ZERO, new KeyValue(opacity, 1.0)),
                    new KeyFrame(new Duration(500), (ActionEvent t) -> {
                        getChildren().remove(0);
                    }, new KeyValue(opacity, 0.0)));
            switchscreenmaximize.play();

这就是问题所在。屏幕只是变成空白而不是 transparent。我错过了什么?还是我看到的 parent 是空白的?

将舞台设置为透明而不是儿童。