2017-10-05 2 views
0

스마트 사람들 :)!Google지도 geoJson 레이어 기능 정보 클릭

이야기 : 나는 안드로이드에서 Google지도에 추가 한 많은 레이어가 있습니다. 나는 그들을 반복하여 추가하고있다 - 새로운 GeoJsonLayer를 생성하고 addLayerToMap() 메소드를 호출한다. 에 setOnFeatureClickListener를 작성했습니다. GeoJsonLayer (아마도 여기에 문제가 있습니다).

문제 : 피쳐 (선형 문자열, 다각형)를 클릭하면 마지막 레이어 - 폴리곤에 대한 정보 만 수신됩니다. 그런 다음 mMap.setOnPolylineClickListener()를 추가 한 다음 청취자가 PolyLineClick ... 등의 LineString에 올바른 메서드가 있는지 확인합니다.하지만 여기에도 문제가 있습니다 - Polyline에서 LineString 속성에 대한 정보를 어떻게 얻을 수 있습니까? geoJson에 추가 한 항목은 무엇입니까?

질문 : 매핑 할 레이어를 추가하는 가장 좋은 방법은 무엇입니까? 클릭 이벤트를 관리하고 사용자를 위해 LineString 또는 Polygon 속성을 표시 할 수 있습니까?

코드 예제 :

geoJsonLayer.setOnFeatureClickListener(new GeoJsonLayer.GeoJsonOnFeatureClickListener() { 
 
\t @Override 
 
\t public void onFeatureClick(Feature feature) { 
 

 
\t \t mMap.setOnPolylineClickListener(new GoogleMap.OnPolylineClickListener() { 
 
\t \t \t @Override 
 
\t \t \t public void onPolylineClick(Polyline polyline) { 
 
\t \t \t \t //TODO show LineString properties 
 
\t \t \t \t //Comes here when LineString clicked 
 
\t \t \t } 
 
\t \t }); 
 

 
\t \t mMap.setOnPolygonClickListener(new GoogleMap.OnPolygonClickListener() { 
 

 
\t \t \t @Override 
 
\t \t \t public void onPolygonClick(Polygon polygon) { 
 
\t \t \t \t //TODO show Polygon properties 
 
\t \t \t \t //Comes here when Polygon clicked 
 
\t \t \t } 
 
\t \t }); 
 
\t }

답변

0

찾을 솔루션 - 1 개 레이어로 모든 레이어를 추가하고 모든 것이 잘 작동합니다.

관련 문제