我有一个SupportMapFragment
private GoogleMap mMap;
// ...
mMap = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap();
我想加载特定地址的地图。上面的代码,我得到https://developers.google.com/maps/documentation/android/map。 我还看到了这篇文章Google maps API in Android,其中谈到了开始一项活动。我不想这样做但是将它加载到片段中。我该怎么做呢? Google地图的API(http://developer.android.com/reference/com/google/android/gms/maps/GoogleMap.html)也没有任何适当的方法来加载具有特定地址的地图。
答案 0 :(得分:2)
看一下这段代码,
public class MainActivity extends Activity {
static final LatLng HAMBURG = new LatLng(53.558, 9.927);
static final LatLng KIEL = new LatLng(53.551, 9.993);
private GoogleMap map;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map))
.getMap();
if (map!=null){
Marker hamburg = map.addMarker(new MarkerOptions().position(HAMBURG)
.title("Hamburg"));
Marker kiel = map.addMarker(new MarkerOptions()
.position(KIEL)
.title("Kiel")
.snippet("Kiel is cool")
.icon(BitmapDescriptorFactory
.fromResource(R.drawable.ic_launcher)));
}
}
答案 1 :(得分:1)
使用Geocoder获取所需地址的纬度和经度,然后使用该纬度和经度向地图添加标记,并使用followinf语句将相机设置为该点
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(
new LatLng(your latitude, your longitude), 11));
http://developer.android.com/reference/android/location/Geocoder.html