2

我对 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));

有谁知道我做错了什么?我不应该能够向上或向下调整一点地图吗?

谢谢,

汤姆

4

1 回答 1

0

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

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

另一种方法是使用Projection转换为Point,添加一些偏移量y并转换回LatLng.

于 2013-09-15T10:47:46.510 回答