Skip to content

Instantly share code, notes, and snippets.

@iromu
Created February 19, 2013 15:48
Show Gist options
  • Save iromu/4987036 to your computer and use it in GitHub Desktop.
Save iromu/4987036 to your computer and use it in GitHub Desktop.
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
public class ProgressiveImageView extends ImageView {
public ProgressiveImageView(final String image, String placeholder) {
final Image img = new Image(image, true);
img.progressProperty().addListener(new ChangeListener<Number>() {
public void changed(ObservableValue ov,
Number old_val, Number new_val) {
new_val = new_val.doubleValue() * 100.0;
if (new_val.doubleValue() == 100.0) {
System.out.println("Loading image: " + image);
setImage(img);
}
}
});
System.out.println("Loading placeholder: " + placeholder);
setImage(new Image(placeholder));
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment