У меня есть игра PlayN, которую я компилирую в HTML5. Я построил пользовательский интерфейс в GWT, используя обычные элементы DOM. Этот пользовательский интерфейс содержит холст, на котором рендерится игра.
Учитывая строку, которая описывает местоположение изображения, я хотел бы использовать клиентские пакеты PlayN, чтобы искать изображение. В настоящее время HtmlAssetManager имеет функцию, которая выполняет нечто подобное:
@Override
protected Image loadImage(String path) {
String url = pathPrefix + path;
AutoClientBundleWithLookup clientBundle = getBundle(path);
if (clientBundle != null) {
String key = getKey(path);
ImageResource resource = (ImageResource) getResource(key, clientBundle);
if (resource != null) {
url = resource.getURL();
}
}
return adaptImage(url);
}
Мне просто нужен URL, чтобы я мог создать виджет Image
:
@Override
protected String loadImage(String path) {
String url = pathPrefix + path;
AutoClientBundleWithLookup clientBundle = getBundle(path);
if (clientBundle != null) {
String key = getKey(path);
ImageResource resource = (ImageResource) getResource(key, clientBundle);
if (resource != null) {
url = resource.getURL();
}
}
return url;
}
Есть ли какой-нибудь способ, которым я могу получить доступ к этому из моего кода GWT UI? Я полагаю, что я мог бы разветвлять PlayN и подкласс HtmlAssetManager
, затем разыграть PlayN.assetManager()
в HtmlAssetManager
, но я бы предпочел этого не делать.