title: MKAnnotationView frame size won't update MapView until zoom
body: <p>I'm trying to implement a custom MKAnnotationView with a custom button inside. I don't want to use the callout property of the MKAnnotation because the frame for that view can't be accessed. Instead I used the MKAnnotationView view to add my UIView with my custom callout bubble inside. Everything works fine, even the touch is captured by the button. The only problem is in resizing the MKAnnotationView frame. I'm able to do that during the: <code>(void)setSelected:(BOOL)selected animated:(BOOL)animated</code> method inside my custom MKAnnotationView that subclasses MKAnnotationView, but when the resized view should display at MapView, that's only achieved by zooming in or out the map. I've tried passing things such as<code>needsLayout</code> and <code>needsDisplay</code> but with no success.</p>
  
  <p>What am I doing wrong? What's the method that the MapView calls when zooming in and out, so I can call it to refresh the custom MKAnnotationView frame?</p>
  
  <p>Here's some code from the CustomMKAnnotationView class that I've created:</p>
  
  <pre><code>- (void)setSelected:(BOOL)selected animated:(BOOL)animated{
  
  [super setSelected:selected animated:animated];
  
  if (selected) { 
       self.frame = CGRectMake(0, 0, 170, 66);
       self.backgroundColor = [UIColor lightTextColor];
       self.centerOffset = CGPointMake(54.5, -33);
       self.image = nil;
       [self createBubble];
       [self animateIn];
       [self addSubview:bubbleView];
  }else{
       [bubbleView removeFromSuperview];
       self.frame = CGRectMake(0, 0, 13, 17);
       self.centerOffset = CGPointMake(0, 0);
  }
  
  }
  </code></pre>