如何防止'GMSMapView'无限水平滚动?

jac*_*ack 2 google-maps-api-3 google-maps-sdk-ios ios7 gmsmapview

如何通过无限水平滚动阻止IOS 7上的"GMSMapView"?我使用'MKTileOverlay'和'kGMSTypeNone'来显示一个遍布世界各地的自定义图像.

(当用户向左滚动时,图像会再次重复.我希望滚动停在这里.)

小智 5

你的代码总是不起作用,所以我改进了它(也是swift版本)

     func mapView(mapView: GMSMapView, didChangeCameraPosition position: GMSCameraPosition) {

        var latitude  = position.target.latitude;
        var longitude = position.target.longitude;

        if (position.target.latitude > bounds.northEast.latitude) {
            latitude = bounds.northEast.latitude;
        }

        if (position.target.latitude < bounds.southWest.latitude) {
            latitude = bounds.southWest.latitude;
        }

        if (position.target.longitude > bounds.northEast.longitude) {
            longitude = bounds.northEast.longitude;
        }

        if (position.target.longitude < bounds.southWest.longitude) {
            longitude = bounds.southWest.longitude;
        }

        if (latitude != position.target.latitude || longitude != position.target.longitude) {

            var l = CLLocationCoordinate2D();
            l.latitude  = latitude;
            l.longitude = longitude;

            mapView.animateToLocation(l);

        }
    } 
Run Code Online (Sandbox Code Playgroud)