Should I use MapView or MapFragment

2019-01-13 07:42发布

问题:

I am not sure whether I should be using MapView or stick to using a MapFragment. My application is an app that finds the nearest set of places that are closest to you. I want to be able to add locations, display details of a marker when I press a marker and when the user moves along the map I want to be able to get the coordinates of the center of the map and display the nearest locations within a defined radius. Would I be at a disadvantage if I continue to use MapFragments or should I switch over to MapView while I still have the chance?

回答1:

First of all, soon the MapView and Google Maps API V1 will stop being supported and won't receive any new updates. And soon all the support will go away.

Secondly, MapFragment may be a little bit less flexible right now, but the map presented, manipulated a looks much better. And I guess that it's functionality will improve with time.

So I would definitely continue to use MapFragments.

UPDATE: As @Brian White pointed out in the comments, today there is a MapView in Google API V2, and you should use it when you want to embed a map in a fragment. That way you will avoid cascading fragments when you don't have to.



回答2:

MapFragment

  • Use it if you want to add a map into Activity class (not fragment because it will create a nested fragment and it´s a mess).
  • Use SupportMapFragment if you want to support just android versions lower than v12.

MapView

  • Use it if you are going to add a map into a fragment. (you need to update each lifecicle to MapView).