永远不会调用GoogleMaps.oncameraChangedListener

use*_*666 2 android google-maps-android-api-2

我有一个Activity(膨胀地图片段),它实现了GoogleMap.onCameraChangedListener,我已经覆盖了onCameraChange方法.

问题在于,无论何时我在地图上移动,即相机位置发生变化,都不会调用onCameraChange方法.

可能是什么导致了这个?

Gur*_*sad 10

试试这个 :

 public class MapActivity extends AppCompatActivity implements
    GoogleMap.OnCameraChangeListener{
    private GoogleMap googleMap;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.googlemap_layout);
        setUpMapIfNeeded();

     }

@Override
public void onCameraChange(CameraPosition cameraPosition) {
    double latitude = cameraPosition.target.latitude;
    double longitude = cameraPosition.target.longitude;

}
private void setUpMapIfNeeded() {

    if (googleMap == null) {
        // Try to obtain the map from the SupportMapFragment.
        googleMap = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map)).getMap();
        if (googleMap != null) {

            googleMap.setMyLocationEnabled(true);
            googleMap.getUiSettings().setMyLocationButtonEnabled(true);
            googleMap.getUiSettings().setRotateGesturesEnabled(false);
            googleMap.getUiSettings().setZoomControlsEnabled(false);
            googleMap.setOnCameraChangeListener(this);

        }
    }
}
Run Code Online (Sandbox Code Playgroud)

}

布局:

 <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">

<fragment
    android:id="@+id/map"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    class="com.google.android.gms.maps.SupportMapFragment" />
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

  • 我是如此愚蠢,我忘了调用setOnCameraChangeListener()方法! (3认同)