gpt4 book ai didi

android - 单击按钮 setMyLocationEnabled 后如何直接在 GoogleMap 上添加标记?

转载 作者:行者123 更新时间:2023-11-29 19:33:07 25 4
gpt4 key购买 nike

我做了一个代码。在这段代码中,当我点击 map 时,点击的点上会有一个标记。

这是我的代码

public class MapsActivity extends FragmentActivity implements OnMapReadyCallback {

private GoogleMap mMap;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_maps);
SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
.findFragmentById(R.id.map);
mapFragment.getMapAsync(this);
}

@Override
public void onMapReady(final GoogleMap googleMap) {
mMap = googleMap;
if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION)
== PackageManager.PERMISSION_GRANTED) {
mMap.setMyLocationEnabled(true);
} else {
Toast.makeText(getApplicationContext(), "oh, no", Toast.LENGTH_LONG).show();
}
googleMap.setOnMapClickListener(new GoogleMap.OnMapClickListener() {
@Override
public void onMapClick(LatLng point) {
String lat = String.valueOf(point.latitude);
String lng = String.valueOf(point.longitude);
MarkerOptions marker = new MarkerOptions().position(
new LatLng(point.latitude, point.longitude)).title("ok");
mMap.addMarker(marker);
}
});
}
}

问题:我想要的是,当我单击 SetMylocationEnable 按钮时,还添加了一个新标记。而且因为我希望标记在整个 map 中只有一个,所以之前在 map 中的另一个标记将被删除。我该怎么做?你愿意教我吗?

你可以在图片中看到我说的是什么按钮。 (图片来自:Enable my location icon Googlemap v2)

enter image description here

最佳答案

mMap.setOnMyLocationButtonClickListener(new OnMyLocationButtonClickListener() {
@Override
public boolean onMyLocationButtonClick() {
Location location = getLocation();
MarkerOptions marker = new MarkerOptions().position(
new LatLng(location.getLatitude(), location.getLongitude())).title("ok");
mMap.addMarker(marker);
return true;
}
});

private Location getLocation() {
LocationManager locationManager = (LocationManager)
getSystemService(Context.LOCATION_SERVICE);
Criteria criteria = new Criteria();
return locationManager.getLastKnownLocation(locationManager
.getBestProvider(criteria, false));

}

关于android - 单击按钮 setMyLocationEnabled 后如何直接在 GoogleMap 上添加标记?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39618268/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com