У меня есть приложение Android, созданное с помощью java с активностью Google Maps, и я хотел заменить рынок «сидней по умолчанию» новым маркером с LatLng, который я уступаю по параметру, но я не знаю как. Я пробовал это =>
public class MapsActivity2 extends FragmentActivity implements OnMapReadyCallback {
private GoogleMap mMap;
private double latitud;
private double longitud;
private LatLng ubicacion;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_maps2);
// Obtain the SupportMapFragment and get notified when the map is ready to be used.
SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
.findFragmentById(R.id.map);
mapFragment.getMapAsync(this);
}
@Override
public void onMapReady(GoogleMap googleMap) {
mMap = googleMap;
// Add a marker in Sydney and move the camera
LatLng sydney = ubicacion;
mMap.addMarker(new MarkerOptions().position(sydney).title("Ubicacion Gasto"));
mMap.moveCamera(CameraUpdateFactory.newLatLng(sydney));
}
public void setearUbicacion(double lat, double longi){
ubicacion = new LatLng(lat, longi);
}
}
Но переменная «ubicacion» все равно установлена на null. Я не хочу менять стиль маркера, я хочу дать методу onMapReady параметр LatLng by вместо того, чтобы настраивать его непосредственно в классе, как показано во всех примерах.
Заранее спасибо!