Android自定义地图视图

Android自定义地图视图,android,android-mapview,pan,Android,Android Mapview,Pan,我正在尝试创建MapView的扩展版本 问题是,当定义了MapView的扩展版本时,MapView不会平移 我正在自定义地图视图中实现一个onTouchListener 我还想知道是否有任何方法可以平移地图视图 当MapView的库存版本与相同的源代码一起使用时,问题不会持续存在 编辑 MyMapView来源: myonCreate()fromMapActivity protected void onCreate(Bundle icicle) { super.onCreate(icicl

我正在尝试创建
MapView
的扩展版本

问题是,当定义了
MapView
的扩展版本时,MapView不会平移

我正在自定义地图视图中实现一个
onTouchListener

我还想知道是否有任何方法可以平移地图视图

当MapView的库存版本与相同的源代码一起使用时,问题不会持续存在

编辑

MyMapView来源:

my
onCreate()
from
MapActivity

protected void onCreate(Bundle icicle) {
    super.onCreate(icicle);
    setContentView(R.layout.mapper);
    mMapView=(MyMapView) findViewById(R.id.mapper_map);
    mMapView.setSatellite(false);       

}
onTouchEvent()应返回false,否则它将使用该事件

您还可以实例化MapController并使用它更改视图。以下是我正在开发的一个应用程序的代码片段:

    @Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.mapview);

    myMapView = (MapView) findViewById( R.id.myMapView );
    myMapView.setBuiltInZoomControls( true );
    myMapController = myMapView.getController();

    myPoint = new GeoPoint(0, 0);
    myMapController.setCenter( myPoint );
    myMapController.zoomToSpan( 360 * MILLION, 360 * MILLION );
}

我投错了

mMapView=(MyMapView) findViewById(R.id.mapper_map); 
应该是

mMapView=(MapView) findViewById(R.id.mapper_map); 
这就解决了问题


无论如何,谢谢。

我怀疑这可能是因为您正在通过某些onTouch方法返回true—请尝试返回false;这应该允许您的类做一些事情,然后让touch事件传播到基类来做它的事情。但是让我们看看你的代码。@John J Smith,代码在帖子中更新了。返回值为false。但它现在仍在作出反应。
mMapView=(MapView) findViewById(R.id.mapper_map);