2016-08-16 2 views
1

Я показываю файл geojson как слой поверх приложения Google Android android. Все работает нормально, но я не могу запускать нажатие на маркеры geojson.Невозможно запустить маркер geojson по карте google-map android

Я приспособил код: https://github.com/googlemaps/android-maps-utils/blob/master/demo/src/com/google/maps/android/utils/demo/GeoJsonDemoActivity.java

, но в строке 142:

layer.setOnFeatureClickListener(new GeoJsonLayer.GeoJsonOnFeatureClickListener() { 

я получаю:

cannot resolve method 'setOnFeatureClickListener()' 

Это мой код в onPostExecute;

@Override 
     protected void onPostExecute(JSONObject jsonObject) { 
      if (jsonObject != null) { 
       // Create a new GeoJsonLayer, pass in downloaded GeoJSON file as JSONObject 
       mLayer = new GeoJsonLayer(map, jsonObject); 
       // Add the layer onto the map 
       addColorsToMarkers(); 
       mLayer.addLayerToMap(); 


       mLayer.setOnFeatureClickListener(new GeoJsonLayer.GeoJsonOnFeatureClickListener() { 
        @Override 
        public void onFeatureClick(GeoJsonFeature feature) { 

        } 
       }); 
      } 
     } 

Нужно ли добавить что-то еще?

Любые предложения? Thanks

ответ

0

У меня была такая же ошибка, когда я использую проект компиляции (': library'), который поставляется с образцом проекта, он отлично работает. Но если я использую компиляции «com.google.maps.android:android-maps-utils:0.4+», это ошибка

причина кликабельна особенность GeoJSON очень новый, выходит на 9 июн 2016. Таким образом, он еще не обновлялся в библиотеке выше 0.4.3. Поэтому. the new clickable geojson feature just added on Jun 9, 2016

Таким образом, работа вокруг заключается в том, чтобы вручную использовать проект библиотеки образцов в свой собственный проект, это очень сложная часть, я попробовал 5 часов, чтобы заставить ее работать.

Во-первых, вы сделаете файл jar из библиотеки образцов.

второй, скопируйте файл lib.jar в свой проект.

третий ссылку на файл фляги из проекта, заключенную

dependencies { 
compile project(':library') 
// Or, fetch from Maven: 
//compile 'com.google.maps.android:android-maps-utils:0.4+' 
compile 'com.google.android.gms:play-services-maps:9.4.0' 
} 
Смежные вопросы