我相对较新的Android(使用Eclipse),我正在尝试使用googlemap的应用程序。我的地图在我的移动应用程序中工作,并在该位置放置了一个带标题的标记。
我的问题是我只有一个小区域供地图显示,当位置居中时,有点削减标题。我只想稍微滚动(平移)地图,以便能够清楚地看到标题并使其更加集中。但我似乎无法让这个工作。以下是我到目前为止的情况:
public class Single extends FragmentActivity {
private GoogleMap mMap;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.single);
}
private void setUpMapIfNeeded() {
if (mMap == null) {
mMap = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map))
.getMap();
if (mMap != null) {
setUpMap();
}
}
}
private void setUpMap() {
LatLng coordinate = new LatLng(myLatitude, myLongitude);
CameraUpdate yourLocation = CameraUpdateFactory.newLatLngZoom(coordinate, 10);
mMap.animateCamera(yourLocation);
mMap.addMarker(new MarkerOptions().position(new LatLng(myLatitude, myLongitude)).title("This is a test title").showInfoWindow();
} }
上面的代码工作正常但是给了我以下地图:
http://www.webonepro.com/2.png
请注意,标题几乎被切断了。我真正想做的是平移/滚动地图以获得以下内容:
http://www.webonepro.com/1.png
如果我尝试添加以下代码,它会将地图移动到不再显示标记的默认区域,而非我相信非洲:
mMap.animateCamera(CameraUpdateFactory.scrollBy(0, 10));
有谁知道我做错了什么?我不应该能够向上或向下调整一下地图吗?
谢谢,
汤姆
答案 0 :(得分:0)
当你一个接一个地呼叫animateCamera
时,只有最后一个会起作用。
您可以使用moveCamera
进行第一次相机更新通话(或者两者都使用)。
另一种方法是使用Projection
转换为Point
,向y
添加一些偏移并转换回LatLng
。