Это мой код ...
- (void)mapView:(GMSMapView *)mapView idleAtCameraPosition:(GMSCameraPosition *)position {
_a2bBooking.pickupLocation = position.target;
if (position.target.latitude != 0.0)
[self getNearbyVehiclesForLocation:_a2bBooking.userLocation pickupLocation:_a2bBooking.pickupLocation];
}
Этот метод вызывается несколько раз ...
-(void) getNearbyVehiclesForLocation: (CLLocationCoordinate2D)userOrigin pickupLocation:(CLLocationCoordinate2D)pickupOrigin {
_alertView = [BRUtility showLoadingMessageWithTitle:@"Loading" delegate:self];
NSString *anURLString = [NSString stringWithFormat:@"%@%@?userlat=%f&userLng=%f&pickupLat=%f&pickupLng=%f",kSmartCommuteBaseURL,kGetNearbyVehiclesURL,_a2bBooking.userLocation.latitude,_a2bBooking.userLocation.longitude,_a2bBooking.pickupLocation.latitude,_a2bBooking.pickupLocation.longitude];
AFHTTPSessionManager *manager = [BRUtility getAFHTTPSessionManager];
[manager GET:anURLString parameters:nil progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) {
[BRUtility dismissLoader:self];
NSString *anErrorCode = [responseObject valueForKey:@"errorCode"];
if (anErrorCode.intValue == 0) {
NSError *error = nil;
self.nearbyVehicles = [MTLJSONAdapter modelsOfClass:[NearbyBikesResponse class] fromJSONArray:[[responseObject valueForKey:@"data"] valueForKey:@"nearbyVehicleList"] error:&error];
[self.mapView clear];
for (NearbyBikesResponse *nearbyVehicle in self.nearbyVehicles) {
[self addMarker:nearbyVehicle];
}
[self zoomToFit];
}
else {
self.nearbyVehicles = [[NSArray alloc] init];
}
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
[BRUtility dismissLoader:self];
[BRUtility showErrorMessageWithTitle:@"Error" message:@"Please try again!" delegate:self];
}];
}
Этот метод вызывается несколько раз,Я хочу вызвать этот метод только один раз.Как перестать звонить несколько раз?