2013-04-25 142 views
2

使用OSMDroid API的缩放界面出现问题 - 似乎无法使缩放控件缩放到级别18之外。使用级别为12-22的本地(SD卡)自定义地图缓存。我们可以从12-18放大,但不能超出。似乎没有办法设置最小或最大缩放。任何人对这个设置的定义有什么想法?设置最小和最大缩放级别

回答

4

你需要做一个类扩展MapView的,那里你可以通过覆盖getMaxZoomLevel()和getMinZoomLevel(),这样的设置:

public class CustomMapView extends MapView { 

/* constructors */ 

@Override 
public int getMaxZoomLevel() { 
    return 22; 
} 

@Override 
public int getMinZoomLevel() { 
    return 12; 
} 

} 

不要忘记改变的MapView调用CustomMapView在您的布局:

<com.yourpackage.CustomMapView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/mapview" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    /> 

和活动:

private CustomMapView mMapView; 
. 
. 
. 
mMapView = (CustomMapView) findViewById(R.id.mapview); 
相关问题