Как добавить несколько отметок на MapView - более ста

1

Я следил за учебником Hello MapView на сайте разработчика и получил все, что хорошо работает. Но теперь мне нужно расширить это, чтобы добавить около 150 маркеров, и мой текущий метод сбрасывает мое приложение.

Причина: keyDispatchingTimedOut

Моя настройка выглядит следующим образом.

Четыре массива String с данными для карты, все имеют (и всегда будут) одинаковое количество индексов и fId [0] == fLatitude [0] == fLongitude [0] == fDetails [0], и т.д.:

    String[] fId;
    String[] fLatitude;
    String[] fLongitude;
    String[] fDetails;

На данный момент это то, как я рисую точки на карте. Это, конечно, не так, потому что карта продолжает сбой:

        List<Overlay> mapOverlays = mapView.getOverlays();
    Drawable drawable = this.getResources().getDrawable(R.drawable.androidmarker);
    FriendItemizedOverlay itemizedoverlay = new FriendItemizedOverlay(drawable, mapView.getContext());

    for(int i=0;i<aLatitude.length;i++){

        Double intLon = Double.parseDouble(aLongitude[i]);
        Double intLat = Double.parseDouble(aLatitude[i]);

        GeoPoint point = new GeoPoint((int)(intLat * 1E6), 
                (int)(intLon * 1E6));
        OverlayItem overlayitem = new OverlayItem(point, "Friend ", "Something");

        itemizedoverlay.addOverlay(overlayitem);
        mapOverlays.add(itemizedoverlay);

    }

Дайте мне знать в комментариях, если вам нужна дополнительная информация, спасибо.

Logcat:

01-13 18: 39: 34.732: ERROR/MapActivity (1085): Не удалось получить соединение factory client 01-13 18: 40: 14.473: ERROR/ActivityManager (69): ANR в com.example.friendapp(com.example.friendapp/.FriendMaps) 01-13 18: 40: 14.473: ERROR/ActivityManager (69): Причина: keyDispatchingTimedOut 01-13 18: 40: 14.473: ОШИБКА /ActivityManager (69): Нагрузка: 2,39/0,78/0,42 01-13 18: 40: 14.473: ERROR/ActivityManager (69): загрузка процессора с 6026 мс до 0 мс назад: 01-13 18: 40: 14.473: ERROR/ActivityManager (69): 93% 1085/com.example.friendapp: 93% пользователей + 0% ядро ​​/ошибки: 25 несовершеннолетних 01-13 18: 40: 14.473: ERROR/ActivityManager (69): 2,6% 69/system_server: 1,8% пользователь + 0,8% ядро ​​/ошибки: 3 младших 01-13 18: 40: 14.473: ERROR/ActivityManager (69): 1,1% 875/com.google.process.gapps: 0% пользователь + 1,1% ядра 01-13 18: 40: 14.473: ERROR/ActivityManager (69): 1.1% 980/com.android.quicksearchbox: 0% пользователь + 1,1% ядра 01-13 18: 40: 14.473: ERROR/ActivityManager (69): 0,9% 133/com.android.launcher: 0% пользователь + 0,9% ядра 01-13 18: 40: 14.473: ERROR/ActivityManager (69): 0.1% 40/adbd: 0% пользователь + 0,1% ядра 01-13 18: 40: 14.473: ERROR/ActivityManager (69): 100% ВСЕГО: 95% пользователей + 4,1% ядра 01-13 18: 40: 14.473: ERROR/ActivityManager (69): загрузка процессора с 2192 м до 2863 мс позже: 01-13 18: 40: 14.473: ERROR/ActivityManager (69): 80% 1085/com.example.friendapp: 80% пользователей + 0% ядро ​​/ошибки: 3 младших 01-13 18: 40: 14.473: ERROR/ActivityManager (69): 77% 1085/bile.friendapp: 77% пользователей + 0% ядра 01-13 18: 40: 14.473: ERROR/ActivityManager (69): 16% 69/system_server: 4,8% пользователя + 11% ядра 01-13 18: 40: 14.473: ERROR/ActivityManager (69): 14% 101/InputDispatcher: 3,2% пользователя + 11% ядра 01-13 18: 40: 14.473: ERROR/ActivityManager (69): 1,6% 70/HeapWorker: 1,6% пользователя + 0% ядра 01-13 18: 40: 14.473: ERROR/ActivityManager (69): 0,5% 133/com.android.launcher: 0% пользователь + 0,5% ядра 01-13 18: 40: 14.473: ERROR/ActivityManager (69): 0.5% 134/HeapWorker: 0% пользователь + 0.5% ядро 01-13 18: 40: 14.473: ERROR/ActivityManager (69): 0,6% 980/com.android.quicksearchbox: 0% пользователь + 0,6% ядра 01-13 18: 40: 14.473: ERROR/ActivityManager (69): 1,3% 981/HeapWorker: 0% пользователь + 1,3% ядра 01-13 18: 40: 14.473: ERROR/ActivityManager (69): 100% ИТОГО: 80% пользователей + 19% ядра 01-13 18: 40: 20.702: ERROR/InputDispatcher (69): канал '406f88b8 com.example.friendapp/com.example.friendapp.FriendMaps(server)' ~ Потребительский закрытый входной канал или произошла ошибка. события = 0x8 01-13 18: 40: 20.712: ERROR/InputDispatcher (69): channel '406f88b8 com.example.friendapp/com.example.friendapp.FriendMaps(server)' ~ Канал невосстановимо сломан и будет удален!

  • 0
    Как это сбой. Что говорит твой logcat?
  • 0
    @Falmarri - Тег - ActivityManager - ANR в com.example.friends, затем Причина: keyDispatchingTimedOut ...
Показать ещё 5 комментариев
Теги:
arrays
android-mapview

1 ответ

0
Лучший ответ

Вы добавляете к карте один и тот же наложение 150 раз. Пожалуйста, добавьте его только один раз.

  • 0
    спасибо, я действительно ценю это - ты мужчина.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню