Mam klasę aktywności lokalizacji z pokrętłem składającym się z wartości z bazy danych. Klikam jedną z wartości, przeszukuję bazę danych i wycofuję współrzędne. Wiem, że otrzymałem prawidłowe współrzędne, ponieważ przetestowałem zapytanie w aplikacji.
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, final int i, long id) {
switch (i) {
case 0:
//remove marker
break;
case 1:
case 2:
case 3:
case 4:
case 5:
case 6:
case 7:
getSuggestedLocation(i);
//Antrim marker
break;
//Armagh marker
//Belfast marker
//Derry marker
//Down marker
//Fermanagh marker
//Tyrone marker
}
}
Chcę zaktualizować moją mapę, aby umieścić znacznik na właśnie wybranej opcji współrzędnych pokrętła.
private void inflateMapFragment(){
MapFragment fragment = MapFragment.newInstance();
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
ft.replace(R.id.map_container, new MapFragment());
ft.commit();
}
private void buildLocationCallBack() {
locationCallback = new LocationCallback()
{
@Override
public void onLocationResult(LocationResult locationResult)
{
for(android.location.Location location:locationResult.getLocations())
currentLocation = (String.valueOf(location.getLatitude())
+ "/"
+ String.valueOf(location.getLongitude()));
}
};
}
private void buildLocationRequest()
{
locationRequest = new LocationRequest();
locationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
locationRequest.setInterval(5000);
locationRequest.setFastestInterval(3000);
locationRequest.setSmallestDisplacement(10);
Warto zauważyć, że ręcznie ustawiam currentLocation w metodzie onLocationResult. Jednak chcę przekazać wartość z mojej bazy danych do tej currentLocation, jeśli wybrano opcję, ale nie wiem, jak uzyskać wynik z przełączenia na wymaganą metodę. Proszę o pomoc, moja głowa jest usmażona lol, w najmniejszym stopniu nie lubię Android Studio
1 odpowiedź
Możesz to nazwać, po prostu zadeklaruj swoją GoogleMap globalnie.
yourGoogleMap.clear();
LatLng latlng = new LatLng(YOUR_LATITUDE, YOUR_LONGITUDE);
MarkerOptions options = new MarkerOptions()
.position(latlng)
.title(YOUR_TITLE);
yourGoogleMap.addMarker(options);
yourGoogleMap.moveCamera(CameraUpdateFactory.newLatLngZoom(latlng, 16.0f));
Podobne pytania
Nowe pytania
android
Android to mobilny system operacyjny Google, używany do programowania lub tworzenia urządzeń cyfrowych (smartfony, tablety, samochody, telewizory, Wear, Glass, IoT). W przypadku tematów związanych z Androidem użyj tagów specyficznych dla Androida, takich jak android-intent, android-activity, android-adapter itp. W przypadku pytań innych niż programowanie lub programowanie, ale związanych ze strukturą Androida, użyj tego linku: https: // android.stackexchange.com.