title: Customizing MKAnnotationView only through subclassed MKMapView?
body: <p>I've tried both this (MKMapView Delegate):</p>
  
  <pre><code>-(void) mapView:(MKMapView *)mapView didAddAnnotationViews:(NSArray *)views
  {
      for (MKAnnotationView *annotationView in views)
      {
          annotationView.image = [UIImage imageNamed:@"itemType2.png"];
          annotationView.rightCalloutAccessoryView = [UIButton buttonWithType:UIButtonTypeDetailDisclosure];
          annotationView.canShowCallout = YES;
      }        
  }
  </code></pre>
  
  <p>and this (on the VC that has the MKMapView):</p>
  
  <pre><code>[self.theMapView addAnnotations:annotationsArray];
  
  for (id &lt;MKAnnotation&gt; itemAnnotation in self.theMapView.annotations)
  {        
      MKAnnotationView *itemAnnotationView = [self.theMapView viewForAnnotation:itemAnnotation];
  
      itemAnnotationView.image = [UIImage imageNamed:@"itemType2.png"];
      itemAnnotationView.rightCalloutAccessoryView = [UIButton buttonWithType:UIButtonTypeDetailDisclosure];
      itemAnnotationView.canShowCallout = YES;
  
      //[self.theMapView setNeedsDisplay];
  }
  </code></pre>
  
  <p>whithout any success on changing the MKAnnotationView's appearance, they appear as simple red pins without the disclosure buttons or anything....</p>
  
  <p>Is the only way of changing them through creating a subclassed MKMapView and using - (MKAnnotationView *)viewForAnnotation:(id &lt; MKAnnotation >)annotation ??? I feel it's desnecessary to create an extra subclass just for changing the annotations, why don't the above methods work?</p>