在Android中的Google地图上只加载两个标记
我只需要在在Android中的Google地图上只加载两个标记,android,google-maps,google-maps-markers,Android,Google Maps,Google Maps Markers,我只需要在googlemap上加载两个标记,但加载了多个标记 下面是我的代码: public class MainActivity extends FragmentActivity { GoogleMap map; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); se
googlemap
上加载两个标记,但加载了多个标记
下面是我的代码:
public class MainActivity extends FragmentActivity {
GoogleMap map;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Getting reference to SupportMapFragment of the activity_main
SupportMapFragment fm = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
// Getting Map for the SupportMapFragment
map = fm.getMap();
if (map != null) {
// Enable MyLocation Button in the Map
if (ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_FINE_LOCATION) !=
PackageManager.PERMISSION_GRANTED
&& ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_COARSE_LOCATION) !=
PackageManager.PERMISSION_GRANTED) {
return;
}
map.setMyLocationEnabled(true);
//It is used to zoom when google first loading on your device.
map.setMapType(GoogleMap.MAP_TYPE_NORMAL);
map.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(23.0310791, 72.5954376), 11));
map.setMyLocationEnabled(true);
map.animateCamera(CameraUpdateFactory.zoomTo(11));
}
map.setOnMapClickListener(new GoogleMap.OnMapClickListener() {
@Override
public void onMapClick(LatLng latLng) {
// Creating a marker
MarkerOptions markerOptions = new MarkerOptions();
// Setting the position for the marker
markerOptions.position(latLng);
// Placing a marker on the touched position
map.addMarker(markerOptions);
}
});
}
}
我已经实现了
googlemapapi
来加载地图,我正试图加载上面的标记。它根据提供的lat和long加载标记,但我只需要在我的谷歌地图上绘制两个标记。我想的是,在地图上放置两个标记,并在每个地图上不断更改其位置。单击重要信息:将新位置设置为旧标记
map.setOnMapClickListener(new GoogleMap.OnMapClickListener() {
boolean swap;
Marker firstMarker = null, secondMarker = null;
@Override
public void onMapClick(LatLng latLng) {
if (firstMarker == null) {
MarkerOptions options = new MarkerOptions();
options.position(latLng);
firstMarker = map.addMarker(options);
return;
}
if (secondMarker == null) {
MarkerOptions options = new MarkerOptions();
options.position(latLng);
secondMarker = map.addMarker(options);
return;
}
swap = !swap;
if (swap) {
firstMarker.setPosition(latLng);
} else {
secondMarker.setPosition(latLng);
}
}
});
当有人点击地图时,你们已经添加了标记。所以,只要你们点击它多少次,地图上就会出现多少个标记。因此,在放置新标记时,是否要删除以前的标记?请检查此答案是否适合您