add 'reloadTheme' method
This commit is contained in:
parent
7229d8d596
commit
632ef15dc4
@ -265,6 +265,11 @@ public class GdxMap implements ApplicationListener, MapRenderCallback {
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case Input.Keys.R:
|
case Input.Keys.R:
|
||||||
|
mMapLayer.reloadTheme();
|
||||||
|
mMapView.updateMap(false);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case Input.Keys.D:
|
||||||
mMapLayer.setRenderTheme(InternalRenderTheme.DEFAULT);
|
mMapLayer.setRenderTheme(InternalRenderTheme.DEFAULT);
|
||||||
mMapView.updateMap(false);
|
mMapView.updateMap(false);
|
||||||
break;
|
break;
|
||||||
|
@ -34,6 +34,7 @@ import org.oscim.tilesource.ITileDataSource;
|
|||||||
import org.oscim.tilesource.MapInfo;
|
import org.oscim.tilesource.MapInfo;
|
||||||
import org.oscim.tilesource.TileSource;
|
import org.oscim.tilesource.TileSource;
|
||||||
import org.oscim.tilesource.TileSource.OpenResult;
|
import org.oscim.tilesource.TileSource.OpenResult;
|
||||||
|
import org.oscim.utils.IOUtils;
|
||||||
import org.oscim.view.MapView;
|
import org.oscim.view.MapView;
|
||||||
|
|
||||||
public class MapTileLayer extends TileLayer<MapTileLoader> {
|
public class MapTileLayer extends TileLayer<MapTileLoader> {
|
||||||
@ -141,15 +142,28 @@ public class MapTileLayer extends TileLayer<MapTileLoader> {
|
|||||||
return true;
|
return true;
|
||||||
|
|
||||||
boolean ret = setRenderTheme((Theme) internalRenderTheme);
|
boolean ret = setRenderTheme((Theme) internalRenderTheme);
|
||||||
if (ret) {
|
if (ret)
|
||||||
mRenderTheme = internalRenderTheme.name();
|
mRenderTheme = internalRenderTheme.name();
|
||||||
}
|
|
||||||
|
|
||||||
mMapView.clearMap();
|
mMapView.clearMap();
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean reloadTheme(){
|
||||||
|
|
||||||
|
Theme t = InternalRenderTheme.valueOf(mRenderTheme);
|
||||||
|
if (t == null)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
boolean ret = setRenderTheme(t);
|
||||||
|
|
||||||
|
mMapView.clearMap();
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Sets the theme file which is used for rendering the map.
|
* Sets the theme file which is used for rendering the map.
|
||||||
*
|
*
|
||||||
@ -167,9 +181,8 @@ public class MapTileLayer extends TileLayer<MapTileLoader> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
boolean ret = setRenderTheme(new ExternalRenderTheme(renderThemePath));
|
boolean ret = setRenderTheme(new ExternalRenderTheme(renderThemePath));
|
||||||
if (ret) {
|
if (ret)
|
||||||
mRenderTheme = renderThemePath;
|
mRenderTheme = renderThemePath;
|
||||||
}
|
|
||||||
|
|
||||||
mMapView.clearMap();
|
mMapView.clearMap();
|
||||||
}
|
}
|
||||||
@ -189,25 +202,13 @@ public class MapTileLayer extends TileLayer<MapTileLoader> {
|
|||||||
|
|
||||||
for (MapTileLoader g : mTileLoader)
|
for (MapTileLoader g : mTileLoader)
|
||||||
g.setRenderTheme(t);
|
g.setRenderTheme(t);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
// } catch (ParserConfigurationException e) {
|
|
||||||
// Log.e(TAG, e.getMessage());
|
|
||||||
// } catch (SAXException e) {
|
|
||||||
// Log.e(TAG, e.getMessage());
|
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
Log.e(TAG, e.getMessage());
|
Log.e(TAG, e.getMessage());
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
//Log.e(TAG, e.getMessage());
|
|
||||||
} finally {
|
} finally {
|
||||||
try {
|
IOUtils.closeQuietly(inputStream);
|
||||||
if (inputStream != null) {
|
|
||||||
inputStream.close();
|
|
||||||
}
|
|
||||||
} catch (IOException e) {
|
|
||||||
Log.e(TAG, e.getMessage());
|
|
||||||
}
|
|
||||||
resumeLoaders();
|
resumeLoaders();
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user