Мерцание плиток GoogleMaps для Android - PullRequest
0 голосов
/ 12 марта 2012

Я только начал работать с Android, и у меня проблема с моей картой. Я создал TabActivity и добавил MapActivity в качестве одной из вкладок:

spec = tabHost.newTabSpec("map").setIndicator("Map");
intent= new Intent().setClass(this, NavisMapActivity.class);
spec.setContent(intent);
tabHost.addTab(spec);

В MapActivity я получаю MapView из макета XML с помощью findViewById .

     <com.google.android.maps.MapView
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/mapview"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:apiKey="my_key_is_here"
        android:clickable="false" />

Когда я загружаю приложение, все работает отлично, пока я не переключаю вкладки или не вызываю другое приложение. В основном, когда вызывается OnPause / OnStop. Затем, когда я возвращаюсь к карте, ее плитки начинают постоянно мерцать. Единственное решение - принудительно закрыть приложение.

Это происходит только со спутниковыми плитками и начиная с версии 2.3.5 (проверено на реальном телефоне и в эмуляторе Eclipse).

Пока я пробовал:

  • с помощью команды mapView.destroyDrawingCache () в функции onPause
  • добавление mapView через код вместо xml layout
  • уничтожение всей MapActivity с LocalActivityManager при переключении вкладки и создание новой

Ничего из этого не помогло. Может ли кто-нибудь помочь мне? Спасибо

1 Ответ

0 голосов
/ 27 марта 2012

Как я уже упоминал в комментариях, это похоже на проблему с API Карт Google:

http://code.google.com/p/android/issues/detail?id=19154&q=google%20maps%20tiles&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars

Будем надеяться, что они исправят это в ближайшее время.

Я хочу попробовать некоторые из этих альтернатив:

Альтернативы Google Maps API

Отчитается, стоит ли с этим иметь дело:)

Этот также кажется многообещающим: http://code.google.com/p/mapsforge/

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