Google지도에서 Android로 poligon을 그리려고합니다. 다각형을 그리려면 mMap.setOnMapLongClickListener
을 사용하여 Google Map에 여러 마커를 추가하고 루프를 사용하여 마커를 연결했습니다. 나는 그것을 성공적으로했다. 그러나 setOnMapLongClickListener
은 Android 업그레이드 버전 (6.0)에서 작동하지 않습니다.안드로이드에서 모든 버전에 대해 setOnMapLongClickListener를 사용하여 Google지도에 마커를 추가하십시오.
내 코드를 추가했습니다.
mMap.setOnMapLongClickListener(new GoogleMap.OnMapLongClickListener() {
@Override
public void onMapLongClick(LatLng latLng) {
mMap.addMarker(new MarkerOptions().position(new LatLng(latLng.latitude, latLng.longitude)).title("Marker of Finder"));
// data formating for server
JSONArray coordinateJsonArray = new JSONArray();
try {
coordinateJsonArray.put(latLng.longitude);
coordinateJsonArray.put(latLng.latitude);
} catch (JSONException e) {
}
list.add(coordinateJsonArray);
markers.add(new LatLng(latLng.latitude, latLng.longitude));
if (markers.size() > 2) {
removeGeofenceImageButton.setVisibility(View.VISIBLE);
for (int i = 0; i < markers.size() - 1; i++) {
polygon3 = mMap.addPolygon(new PolygonOptions()
.add(new LatLng(markers.get(i).latitude, markers.get(i).longitude),
new LatLng(markers.get(i + 1).latitude, markers.get(i + 1).longitude),
new LatLng(markers.get(0).latitude, markers.get(0).longitude))
.strokeColor(0x82662d91)
.fillColor(0x82662d91)
.strokeWidth(1)
);
}
}
Log.d("Polygone", markers.toString());
}
});
FrameLayout
내에지도 조각을 추가했습니다. 다음은 XML 코드입니다.
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/mapLayout"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<fragment
android:id="@+id/map"
android:name="com.google.android.gms.maps.SupportMapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:longClickable="true"
tools:context="com.finder.gps.tracker.activity.MainActivity" />
<!--<ImageButton-->
<!--android:id="@+id/remove"-->
<!--android:layout_width="wrap_content"-->
<!--android:layout_height="wrap_content"-->
<!--android:layout_gravity="right|center"-->
<!--android:background="@color/background"-->
<!--app:srcCompat="@android:drawable/ic_delete" />-->
<Button
android:id="@+id/add_geofence"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:background="#c7ffffff"
android:text="Add Geofence"
android:textColor="@color/black" />
</FrameLayout>
이 코드를 테스트했습니다. 그것은 안드로이드 버전 5.0 개까지 작동했습니다.
Android에서 모든 버전의 Google지도에 마커를 추가하는 방법을 알려주세요.
내가 볼 수있는 누군가가 다운이 질문에 투표했다. 저기 투표의 이유를 알려주십시오. 이 질문에 문제가 있거나이 질문을 개선해야합니까? – anuradha