UICalloutView

From iPhone Development Wiki
UICalloutView in action

UICalloutView is a "callout" view which looks like a dialog box. It was used in MobileMaps.app.

Using UICalloutView

UICalloutView* callout = [UICalloutView sharedCalloutView];
[callout setTitle:@"Title"];
[callout setSubtitle:@"subtitle"];
[callout addTarget:self action:@selector(closeCalloutView:)];
[window addSubview:callout];
[callout setAnchorPoint:CGPointMake(80, 40) boundaryRect:[UIScreen mainScreen].applicationFrame animate:YES];

...

-(void)closeCalloutView:(UIButton*)sender {
  [(UICalloutView*)sender.superview fadeOutWithDuration:1];
}

UICalloutView delegate

Signature @property(assign,nonatomic) id delegate;
Available in 2.0 –

One could assign a delegate to a UICalloutView. The delegate must conform to the informal protocol:

@protocol UICalloutViewDelegate
@optional
-(void)calloutView:(UICalloutView*)calloutView willMoveToAnchorPoint:(CGPoint)newPoint animated:(BOOL)animated;
-(void)calloutView:(UICalloutView*)calloutView didMoveToAnchorPoint:(CGPoint)newPoint animated:(BOOL)animated;
@end

Reference