Невозможно получить кнопки масштабирования для отображения на MapView - PullRequest
3 голосов
/ 31 января 2010

Я пытался решить эту, казалось бы, простую проблему примерно полдня. У меня есть рабочий 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. Я нашел много постов, связанных с этой проблемой, но ни одного, которые ее решают.

Спасибо за вашу помощь.

Ответы [ 2 ]

3 голосов
/ 01 февраля 2010

Элементы управления масштабированием появляются только тогда, когда пользователь нажимает на соответствующую область экрана. Я не знаю, как заставить их появляться, не говоря уже о том, чтобы постоянно оставаться на экране.

0 голосов
/ 01 февраля 2010

Как сказал commonsware, вы не можете заставить элементы управления появляться.

Но вы можете нарисовать свои собственные элементы управления и установить масштаб карты, используя метод setZoom MapController.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...