我一直试图将这个看似简单的问题解决了大约半天。我有一个工作MapView,我只是想显示默认的缩放键,并一直在那里。它们根本没有出现 - 它们不会出现然后消失。
代码:
public void onCreate( Bundle savedInstanceState )
{
super.onCreate( savedInstanceState );
setContentView( R.layout.main );
_altDisplay = (TextView) findViewById( R.id.altitudeDisplay );
_speedDisplay = (TextView) findViewById( R.id.speedDisplay );
_accuracyDisplay = (TextView) findViewById( R.id.accuracyDisplay );
_mapView = (MapView) findViewById( R.id.mapView );
_mapView.setBuiltInZoomControls(true);
_mapController = _mapView.getController();
_mapController.setZoom(22);
_locationUpdates = new LocationUpdateHandler( (LocationManager) getSystemService( Context.LOCATION_SERVICE) );
_locationUpdates.addObserver( this );
}
public void updateLocation( GeoPoint point, double altitude, float speed, float accuracy )
{
_mapController.setCenter(point);
_altDisplay.setText( "Altitude: " + Double.toString(altitude) );
_speedDisplay.setText( "Speed: " + Float.toString(speed) );
_accuracyDisplay.setText( "Accuracy: " + Float.toString(accuracy) );
}
我尝试注释掉setZoom并尝试将setBuiltInZoom控件移动到updateLocation方法。我发现了很多关于这个问题的帖子,但没有一个可以解决它。
感谢您的帮助。
答案 0 :(得分:3)
只有当用户点击屏幕的相应区域时,才会显示缩放控件。我不知道有办法迫使他们出现,更不用说永久留在屏幕上了。
答案 1 :(得分:0)
正如commonsware所说,你不能强制控件出现。
但是你可以使用MapController的setZoom方法绘制自己的控件并设置地图的比例。