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来源:
myonCreate()
fromMapActivity
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);