Android GoogleMap-.scrollby无法正常工作

Android GoogleMap-.scrollby无法正常工作,android,eclipse,google-maps,Android,Eclipse,Google Maps,我对Android(使用Eclipse)比较陌生,我正在尝试使用一个使用谷歌地图的应用程序。我在我的移动应用程序中使用了地图,并在该位置放置了一个带有标题的标记 我的问题是,我只有一个地图显示的小区域,当位置居中时,有点切断了一些标题。我只想滚动(平移)地图一点点,让标题可以看得更清楚,更居中一点。但我似乎无法让它发挥作用。以下是我到目前为止的情况: public class Single extends FragmentActivity { private GoogleMap mMap;

我对Android(使用Eclipse)比较陌生,我正在尝试使用一个使用谷歌地图的应用程序。我在我的移动应用程序中使用了地图,并在该位置放置了一个带有标题的标记

我的问题是,我只有一个地图显示的小区域,当位置居中时,有点切断了一些标题。我只想滚动(平移)地图一点点,让标题可以看得更清楚,更居中一点。但我似乎无法让它发挥作用。以下是我到目前为止的情况:

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();

 } }
上面的代码工作正常,但给出了以下映射:

请注意,标题几乎被切掉了一点。我真正想做的是稍微平移/滚动地图,以获得以下内容:

如果我尝试添加以下代码,它会将地图移动到不再显示标记的默认区域,而我认为:

mMap.animateCamera(CameraUpdateFactory.scrollBy(0, 10));
有人知道我做错了什么吗?难道我不能把地图上下调整一点吗

谢谢


Tom

当你一个接一个地调用
animateCamera
时,只有最后一个才会生效

您可以使用
moveCamera
进行第一次相机更新调用(甚至两者都可以)


另一种方法是使用
投影
转换为
,向
y
添加一些偏移量,然后转换回
LatLng

我继续并将两个调用都更改为moveCamera。虽然地图不再以默认值为中心,但实际上它仍然不会滚动地图。我甚至尝试将scrollby中Y值的像素量增加到一个更大的数字(即10009999)。以投影方式执行此操作的语法是什么?还有其他建议吗?@Tom所以当有两个
moveCamera
s时,它看起来还是开着的?第一个调用是
yourLocation
,第二个调用是
scrollBy
?如果是那样的话,试着将scrollBy更改为animateCamera。尝试将“scrollby”更改为“animateCamera”,但也没有效果。这就是我现在拥有的,但仍然不起作用:
LatLng坐标=新的LatLng(纬度、经度);CameraUpdate yourLocation=CameraUpdateFactory.newLatLngZoom(坐标,10);mMap.addMarker(新标记选项().position(新纬度、经度)).title(“这是一个测试”).showInfoWindow();mMap.移动摄像机(您的位置);mMap.animateCamera(CameraUpdateFactory.scrollBy(01100))我注意到一件奇怪的事情,如果我添加一个按钮,然后放置代码
mMap.animateCamera(CameraUpdateFactory.scrollBy(01100))在其中,当我按下按钮时,地图会正确滚动。但是为什么它在我的普通代码中不起作用,我应该做些什么来修复它呢?