Conviero la actividad a FragmentActivity pero ahora no puedo agregar la ActionBar.
public class LocationActivity extends FragmentActivity implements OnMapReadyCallback {
public static final String EXTRA_DATA = "EXTRA_DATA";
Item item;
GoogleMap map;
String title, address, info;
Double lon, lat;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_location);
// Inicializo el fragmento de mapa
SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.google_current_map);
mapFragment.getMapAsync(this);
// Obtengo los datos de forma serializable
item = (Item) getIntent().getSerializableExtra(EXTRA_DATA);
lat = Double.parseDouble(item.getLatitude());
lon = Double.parseDouble(item.getLongitude());
title = item.getTitle();
address = item.getAddress();
// Concateno las cadenas para mostrar en el mapa
info = String.format("%s /n %s", title, address);
FragmentTransaction mFragmentTransaction = getFragmentManager()
.beginTransaction();
mFragmentTransaction.addToBackStack(null);
}
// Este evento habilitará la función de retroceso al presionar el botón
@Override
public void onBackPressed() {
if (getFragmentManager().getBackStackEntryCount() == 0) {
this.finish();
}
else {
getFragmentManager().popBackStack();
}
}
@Override
public void onMapReady(GoogleMap googleMap) {
map = googleMap;
LatLng Location = new LatLng(lat, lon);
Toast.makeText(this, lat + " " + lon, Toast.LENGTH_SHORT).show();
map.addMarker(new MarkerOptions().position(Location).title(info));
map.moveCamera(CameraUpdateFactory.newLatLng(Location));
}
}
davy.ai
Para agregar una barra de aplicaciones (action bar) a tu Fragment Activity, necesitas modificar tu archivo de diseño XML (activity_location.xml en este caso) para incluir una Toolbar y luego configurarla como la action bar.
Esto agregará una Toolbar a tu diseño.
Esto configurará la Toolbar como la action bar y podrás agregar navegación hacia atrás usando el siguiente código:
Esto agregará el botón de retroceso a la Toolbar y, al hacer clic en él, volverá a la actividad anterior.