SupportMapFragment en DialogFragment

Necesito incorporar un SupportMapFragment en un Dialog . Esto es lo mejor que pude pensar:

 public class SupportMapFragmentDialog extends DialogFragment { private final SupportMapFragment fragment; public SupportMapFragmentDialog() { fragment = new SupportMapFragment(); setTargetFragment(fragment, 1); } @Override public View onCreateView(final LayoutInflater inflater, final ViewGroup container, final Bundle savedInstanceState) { return fragment.onCreateView(inflater, container, savedInstanceState); } public SupportMapFragment getFragment() { return fragment; } } 

Sin embargo, cuando llamo a esto:

 final SupportMapFragmentDialog dialog = new SupportMapFragmentDialog(); dialog.show(getSupportFragmentManager(), "Historico"); 

Entiendo esto:

Introduzca aquí la descripción de la imagen

¿Qué puedo hacer para ver el mapa en el cuadro de diálogo?

La aplicación tiene otro SupportMapFragment que está funcionando maravillas, por lo que no tiene nada que ver con la configuración.

Puede mostrar un fragmento de mapa en un

 public class DialogMapFragment extends DialogFragment { private SupportMapFragment fragment; public DialogMapFragment() { fragment = new SupportMapFragment(); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.mapdialog, container, false); getDialog().setTitle(""); FragmentTransaction transaction = getChildFragmentManager().beginTransaction(); transaction.add(R.id.mapView, fragment).commit(); return view; } public SupportMapFragment getFragment() { return fragment; } } 

R.layout.mapdialog:

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:padding="0dp" > <FrameLayout android:id="@+id/mapView" android:layout_width="match_parent" android:layout_height="match_parent" > </FrameLayout> </RelativeLayout> 

Al final terminé usando MapView en un MapView de Dialog normal en lugar de SupportMapFragment

Este es mi código:

 final Historico h = adapter.getItem(arg2 - 1); if (mv.getParent() != null) { ((ViewGroup) mv.getParent()).removeView(mv); } final Dialog d = new Dialog(HistorialScreen.this); d.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND); d.requestWindowFeature(Window.FEATURE_NO_TITLE); d.setContentView(mv); mv.getMap().clear(); mv.getMap().moveCamera(CameraUpdateFactory.newLatLngZoom(h.getPosicion(), 17)); final MarkerOptions options = new MarkerOptions(); options.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_CYAN)); options.position(h.getPosicion()); mv.getMap().addMarker(options); d.show(); 

Y funciona como se pretende.

  • Referencia MapView en SupportMapFragment
  • MapFragment que causa NullPointerException en el método getMapAsync (this)
  • GetMapAsync () en el fragmento
  • Error al abrir SupportMapFragment por segunda vez
  • MapFragment.getMap () devuelve null
  • Mostrar MapFragment en un DialogFragment
  • Android GoogleMap v2 se recorta o no se muestra completamente
  • SupportMapFragment carga extremadamente lento la primera vez, pero rápidamente en las cargas siguientes (incluyendo diferentes actividades)
  • Android MapFragment Runtime Error - No se pudo encontrar la clase 'maps.jk'
  • No se puede ver los detalles de StrictMode en logcat - Se ha suprimido la violación de la política de StrictMode en la rotación de la pantalla
  • Google Maps Android API v2 SoporteMapFragmento de pérdida de memoria
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.