过渡时javafx mediaview白色闪烁 [英] javafx mediaview white flash on transition

查看:351
本文介绍了过渡时javafx mediaview白色闪烁的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

伙计...

我正在使用以下代码在两个视频之间进行切换.

I'm using the following code to transition between two videos.

public void loadMedia(Media media)
{
    MediaPlayer newPlayer = new MediaPlayer(media);
    newPlayer.setAutoPlay(true);
    mediaView.setMediaPlayer(newPlayer);
    player = newPlayer;
}

当我用新视频致电loadMedia时,媒体播放器短暂闪烁白色.我猜想这与状态花费时间有关.但是我需要这些过渡才能顺利进行,而不会产生闪光.

When I call loadMedia with the new video, the mediaplayer flashes white briefly. I'm guessing this has to do with the status taking time. But I need these transitions to go smoothly with no flash.

该怎么办?

谢谢, 吉宝

推荐答案

像往常一样,我不久之后回答了我自己的问题.技巧是等待状态准备就绪,然后再更改视图的播放器:

As so often, I answered my own question shortly after. The trick is to wait for the status to be ready before you change the view's player:

public void loadMedia(Media media)
{
    MediaPlayer newPlayer = new MediaPlayer(media);
    newPlayer.setAutoPlay(true);
    newPlayer.setOnReady(()->videoReady(newPlayer));
}

private void videoReady(MediaPlayer newPlayer)
{
    mediaView.setMediaPlayer(newPlayer);
    player = newPlayer;
}

这篇关于过渡时javafx mediaview白色闪烁的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆