MapView dans un Fragment (Nid d'abeille)

maintenant que la version finale du SDK est avec google api - quelle est la meilleure façon de créer un Fragment avec une MapView? MapView besoin d'un MapActivity de travail de droit.

Ayant l'Activité la gestion de l'Fragments d'hériter de MapActivity (mauvaise solution car elle va à l'encontre de l'idée que les Fragments sont autonomes) et d'utiliser un xml de mise en page ne fonctionne pas. Je reçois un NullPointerException dans MapActivity.setupMapView():

E/AndroidRuntime( 597): Causée par: java.lang.NullPointerException 
E/AndroidRuntime( 597): au com.google.android.cartes.MapActivity.setupMapView(MapActivity.java:400) 
E/AndroidRuntime( 597): au com.google.android.cartes.MapView.(MapView.java:289) 
E/AndroidRuntime( 597): au com.google.android.cartes.MapView.(MapView.java:264) 
E/AndroidRuntime( 597): au com.google.android.cartes.MapView.(MapView.java:247) 

Ma deuxième idée était de créer la MapView par programme et réussir l'activité qui y est associée (via getActivity()) dans le Contexte de la MapView constructeur. Ne fonctionne pas:

E/AndroidRuntime( 834): Causée par: java.lang.IllegalArgumentException: MapViews ne peut être créée à l'intérieur des instances de MapActivity. 
E/AndroidRuntime( 834): au com.google.android.cartes.MapView.(MapView.java:291) 
E/AndroidRuntime( 834): au com.google.android.cartes.MapView.(MapView.java:235) 
E/AndroidRuntime( 834): au de.foo.FinderMapFragment.onCreateView(FinderMapFragment.java:225) 
E/AndroidRuntime( 834): au android.app.FragmentManagerImpl.moveToState(FragmentManager.java:708) 
E/AndroidRuntime( 834): au android.app.FragmentManagerImpl.moveToState(FragmentManager.java:900) 
E/AndroidRuntime( 834): au android.app.FragmentManagerImpl.addFragment(FragmentManager.java:978) 
E/AndroidRuntime( 834): au android.app.De l'activité.onCreateView(l'Activité.java:4090) 
E/AndroidRuntime( 834): au android.vue.LayoutInflater.createViewFromTag(LayoutInflater.java:664) 

Vraiment il devrait y avoir quelque chose comme MapFragment qui prend soin de les threads d'arrière-plan MapView besoins, je suppose... Donc qu'est-ce que les meilleures pratiques en vigueur pour ce faire?

Merci et salutations de l'Allemagne,
Valentin

InformationsquelleAutor Valentin | 2011-02-24