我是Android上的Google Map API新手。 我有一个默认位置,当我点击启动谷歌地图时,它会在3D视图中显示位置(左侧的屏幕截图),但我实际上更喜欢右侧的屏幕截图(备注:与放大问题无关)
如何在Android中以编程方式设置首选项?
MapFragment mapFragment = (MapFragment)getFragmentManager().findFragmentById(R.id.map_fragment);
mMap=mapFragment.getMap();
mMap.setMyLocationEnabled(true);
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(mPosition, 13));
CameraUpdate zoom = CameraUpdateFactory.zoomTo(18);
mMap.animateCamera(zoom);
mMarker=mMap.addMarker(setMarkerOptions(markerTitle,markerMsg,mPosition));
mMarker.setDraggable(true);
}
private MarkerOptions setMarkerOptions(String title,String msg,LatLng position){
MarkerOptions options=new MarkerOptions();
options.title(title);
options.snippet(msg);
options.position(position);
return options;
}
答案 0 :(得分:0)
我认为你的目标是改变地图Tilt (viewing angle)。您可以在调用mMap.animateCamera
之前设置部件的倾斜度。在Google地图的相机和视图文档中,它包含在Change the Camera Position:
更改相机位置
共同的位置变化有两种方便的方法。 CameraUpdateFactory.newLatLng(LatLng)为您提供CameraUpdate,可以更改相机的纬度和经度,同时保留所有其他属性。 CameraUpdateFactory.newLatLngZoom(LatLng,float)为您提供CameraUpdate,可以更改相机的纬度,经度和变焦,同时保留所有其他属性。
为了充分灵活地更改相机位置,请使用CameraUpdateFactory.newCameraPosition(CameraPosition),它为您提供将相机移动到给定位置的CameraUpdate。可以使用新的CameraPosition()直接获取CameraPosition,也可以使用新的CameraPosition.Builder()获取CameraPosition.Builder。
我专门链接了CameraPosition
对象,因为它有一个允许你提供float tilt
值的构造函数。
我不完全确定这是否是唯一的方法,但请查看文档,我很确定您会从那里找到您需要的内容。干杯! :d