1

我正在使用google-maps-utils(仅标记聚类)并且代码是只读的。

dependencies {
    compile 'com.google.maps.android:android-maps-utils:0.5+'
}

我想在ClusterManager.java中评论 3 行

    /**
     * Might re-cluster.
     */
    @Override
    public void onCameraIdle() {
        if (mRenderer instanceof GoogleMap.OnCameraIdleListener) {
            ((GoogleMap.OnCameraIdleListener) mRenderer).onCameraIdle();
        }

        // Don't re-compute clusters if the map has just been panned/tilted/rotated.
        CameraPosition position = mMap.getCameraPosition();
//        if (mPreviousCameraPosition != null && mPreviousCameraPosition.zoom == position.zoom) {
//            return;
//        }
        mPreviousCameraPosition = mMap.getCameraPosition();

        cluster();
    }
  1. 我可以将此代码导入我的应用程序并编辑这些行吗?
  2. 如果是,我该怎么做?(一步步)

我正在尝试导入模块,但我做错了。

4

1 回答 1

1

如果这是一个您将直接使用的高级类,您可以简单地扩展该类并覆盖该方法:

public class MyClusterManager<T extends ClusterItem> extends ClusterManager<T> {
  @Override
  public void onCameraIdle() {
    if (mRenderer instanceof GoogleMap.OnCameraIdleListener) {
      ((GoogleMap.OnCameraIdleListener) mRenderer).onCameraIdle();
    }
    CameraPosition position = mMap.getCameraPosition();
    mPreviousCameraPosition = mMap.getCameraPosition();
    cluster();
  }
}

接着:

ClusterManager<MyClusterItem> clusterManager = new MyClusterManager<MyClusterItem>();
// do something with your own clusterManager ...
于 2017-12-05T19:02:30.137 回答