public class ResolutionFileResolver extends java.lang.Object implements FileHandleResolver
FileHandleResolver uses a given list of ResolutionFileResolver.Resolutions to determine the best match based on the current
Screen size. An example of how this resolver works:
Let's assume that we have only a single ResolutionFileResolver.Resolution added to this resolver. This resolution has the following
properties:
portraitWidth = 1920portraitHeight = 1080folder = "1920x1080"
One would now supply a file to be found to the resolver. For this example, we assume it is "textures/walls/brick.png".
Since there is only a single ResolutionFileResolver.Resolution, this will be the best match for any screen size. The resolver will now try to
find the file in the following ways:
"textures/walls/1920x1080/brick.png""textures/walls/brick.png"
The files are ultimately resolved via the given {baseResolver. In case the first version cannot be resolved, the
fallback will try to search for the file without the resolution folder.
| Modifier and Type | Class and Description |
|---|---|
static class |
ResolutionFileResolver.Resolution |
| Modifier and Type | Field and Description |
|---|---|
protected FileHandleResolver |
baseResolver |
protected ResolutionFileResolver.Resolution[] |
descriptors |
| Constructor and Description |
|---|
ResolutionFileResolver(FileHandleResolver baseResolver,
ResolutionFileResolver.Resolution... descriptors)
Creates a
ResolutionFileResolver based on a given FileHandleResolver and a list of ResolutionFileResolver.Resolutions. |
| Modifier and Type | Method and Description |
|---|---|
static ResolutionFileResolver.Resolution |
choose(ResolutionFileResolver.Resolution... descriptors) |
protected java.lang.String |
resolve(FileHandle originalHandle,
java.lang.String suffix) |
FileHandle |
resolve(java.lang.String fileName) |
protected final FileHandleResolver baseResolver
protected final ResolutionFileResolver.Resolution[] descriptors
public ResolutionFileResolver(FileHandleResolver baseResolver, ResolutionFileResolver.Resolution... descriptors)
ResolutionFileResolver based on a given FileHandleResolver and a list of ResolutionFileResolver.Resolutions.baseResolver - The FileHandleResolver that will ultimately used to resolve the file.descriptors - A list of ResolutionFileResolver.Resolutions. At least one has to be supplied.public FileHandle resolve(java.lang.String fileName)
resolve in interface FileHandleResolverprotected java.lang.String resolve(FileHandle originalHandle, java.lang.String suffix)
public static ResolutionFileResolver.Resolution choose(ResolutionFileResolver.Resolution... descriptors)