Images in Jars
Here are two utility classes.
The first is designed to help with loading images,
(from both inside and outside jar files).
The second is a wrapper around the first, is is designed to help speed up
loading batches of images.
ImageLoader
A class containing static methods which load images - including images within jar files.
ImageLoadingManager
A wrapper around the ImageLoader class...
This class keeps track of which images have been loaded -
and provides a method to check to see if they have all been loaded...
To use it, repeatedly (once for each image) call:
ImageLoadingManager.getImage("graphics/imagename.gif");
...as early as possible during your setup.
Then, in your main thread, just before you need to use the images
you can make sure they have all loaded using code like:
do {
try {
thread.sleep(50);
}
catch (InterruptedException e) {
}
} while (!ImageLoadingManager.allImagesAreLoaded());
This method of loading the images is used because it is fast -
much faster than waiting for individual images to load.
If you don't need to ensure your images have loaded, use the
ImageLoader class directly.
|