title: iphone CLLocationmanager Region monitoring callbacks not triggered
body: <p>I am trying to use monitoring regions to track if users have visited landmarks.
  the location manager is initialized in a viewcontroller along with a mapkit</p>
  
  <p>in viewdidload of the view controller:</p>
  
  <pre><code>if (self.locationManager == nil)
  {
      //        NSLog(@"creating location manager");
      self.locationManager = [[CLLocationManager alloc] init];
      locationManager.delegate = self;
      locationManager.desiredAccuracy = kCLLocationAccuracyBestForNavigation;
      locationManager.distanceFilter = kCLDistanceFilterNone;
  }
  
  
  NSSet* set=[locationManager monitoredRegions];
  
  if ([CLLocationManager regionMonitoringAvailable] &amp;&amp; [CLLocationManager regionMonitoringEnabled]) {
      NSLog(@"region monitoring okay");
      NSLog(@"monitored regions: %@",set);
  } 
  </code></pre>
  
  <p>i get the NSLogs "region monitoring okay" and all the regions correctly.</p>
  
  <p>adding of the regions are done like so</p>
  
  <pre><code>double metres=20.0;
  CLLocationDistance dist=metres;
  CLLocationAccuracy acc=1.0;
  
  CLRegion *reg=[[CLRegion alloc] initCircularRegionWithCenter:coordinate radius:dist identifier:landmarkObj.landmarkName];
  
  [locationManager startMonitoringForRegion:reg desiredAccuracy:acc];
  </code></pre>
  
  <p>but the callbacks are all not triggered</p>
  
  <pre><code> - (void)locationManager:(CLLocationManager *)manager didEnterRegion:(CLRegion *)region
  {
      UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Entered" 
                                                      message:region.identifier
                                                     delegate:self
                                            cancelButtonTitle:@"OK"
                                            otherButtonTitles:nil, nil];
      [alert show];
  }
  
  - (void)locationManager:(CLLocationManager *)manager didExitRegion:(CLRegion *)region
  {
      UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Exited" 
                                                      message:region.identifier
                                                     delegate:self
                                            cancelButtonTitle:@"OK"
                                            otherButtonTitles:nil, nil];
      [alert show];
  }
  
  - (void)locationManager:(CLLocationManager *)manager didStartMonitoringForRegion:(CLRegion *)region
  {
      NSLog(@"started monitring for region: %@",region);
  }
  
  - (void) locationManager:(CLLocationManager *)manager monitoringDidFailForRegion:(CLRegion *)region withError:(NSError *)error
  {
      NSLog(@"%@",error);
  }
  </code></pre>
  
  <p>updating the location however, works fine.</p>
  
  <pre><code>[locationManager startUpdatingLocation];
  </code></pre>
  
  <p>triggers the callback didUpdateToLocation as expected</p>
  
  <p>Update: used didUpdatToLocation to monitor for regions instead.
  still interested to know why this would not work though, looks like few have had success with region monitoring</p>