![](/img/trans.png)
[英]How to add marker in google map when i recieve longitude and latitude from sms
[英]How to save longitude and latitude from the marker i set on the map
我知道如何從坐標設置位置,當地圖活動開始時,它會跳轉到這些坐標,但我希望用戶能夠在地圖上設置一個標記並將坐標保存到一些變量中,但我不知道該怎么做那。 請指出我正確的方向。
public void onMapReady(GoogleMap googleMap) {
mMap = googleMap;
LatLng sydney = new LatLng(-34, 151);
mMap.addMarker(new MarkerOptions()
.position(sydney)
.title("Marker in Sydney"));
mMap.moveCamera(CameraUpdateFactory.newLatLng(sydney));
}
添加了一些圖片以查看我的代碼的完整視圖。 對不起,我對這個地圖的東西真的很陌生。 每條評論都會幫助我更多地了解這一點。
為您的活動設置全局變量
private LatLng myLatLng;
接下來,您需要為您的地圖設置一個標記拖動偵聽器
map.setOnMarkerDragListener(new GoogleMap.OnMarkerDragListener() {
@Override
public void onMarkerDragStart(Marker marker) {
}
@Override
public void onMarkerDrag(Marker marker) {
}
@Override
public void onMarkerDragEnd(Marker marker) {
myLatLng = marker.getPosition();
}
});
如果要將標記保存為變量...
private Marker myMarker;
private LatLng myLatLng;
myMarker = mMap.addMarker(new MarkerOptions()
.position(sydney)
.title("Marker in Sydney"));
myLatLng = myMarker.getPosition();
只需將您的最后一行替換為
mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(sydney, 15));
首先在地圖上添加標記
private void setUpMap()
{
.......
googleMap.setOnMarkerClickListener(this);
myMarker = googleMap.addMarker(new MarkerOptions()
.position(latLng)
.title("My Spot")
.snippet("This is my spot!")
.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_AZURE)));
......
}
然后使用此代碼獲取標記位置
@Override
public void onMarkerDragEnd(Marker marker) {
// TODO Auto-generated method stub
Toast.makeText(
MainActivity.this,
"Lat " + map.getMyLocation().getLatitude() + " "
+ "Long " + map.getMyLocation().getLongitude(),
Toast.LENGTH_LONG).show();
System.out.println("yalla b2a "
+ map.getMyLocation().getLatitude());
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.