【问题标题】:Change OnMylocationButtonClick zoom in Google Maps v2 Android在 Google Maps v2 Android 中更改 OnMylocationButtonClick 放大
【发布时间】:2014-09-23 08:51:10
【问题描述】:

我试图在单击“位置”按钮时更改缩放级别,但它始终获得默认缩放值。

你猜怎么着,缩放不仅仅在 Animate 部分起作用。如果我使用 moveCamera,它会将缩放级别更改为我指定的级别。

这是我正在尝试的:

googleMap.setOnMyLocationButtonClickListener(new OnMyLocationButtonClickListener() 
{
    @Override
    public boolean onMyLocationButtonClick() 
    {
      Log.e("Inside","Click part");
      LatLng ll = new LatLng(curlat,curlong);
      CameraUpdate update = CameraUpdateFactory.newLatLngZoom(ll, 20);
      googleMap.animateCamera(update);  
      return false;
    }
});

不确定动画部分有什么问题?

【问题讨论】:

  • 您是否还有其他监听器也会更改相机并可能获取当前缩放级别。如果它们在动画期间运行,它们将选择并修复当前缩放级别,而在没有动画的情况下直接移动相机时不会发生这种情况。
  • @user2808624:我没有其他听众。我曾经有 googleMap.setMyLocationEnabled(true);但我现在禁用了它,仍然遇到同样的问题。

标签: android google-maps google-maps-android-api-2


【解决方案1】:

您应该返回 true 而不是 false。否则,地图还会执行默认操作,这很可能(我没有详细检查)包括移动到当前位置(与您的 ll 相同)但使用“当前”缩放级别。如果您为相机设置动画,则当前缩放级别尚未发生太大变化。但是如果你直接移动相机而不用动画,它就完全改变了。

【讨论】:

  • 将 false 更改为 true。这就是问题所在。非常感谢!
猜你喜欢
  • 1970-01-01
  • 2013-01-28
  • 2012-12-29
  • 1970-01-01
  • 2021-09-27
  • 1970-01-01
  • 1970-01-01
  • 2013-05-02
  • 1970-01-01
相关资源
最近更新 更多