Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Custom Callout Bubble iOS

I am developing app with mapview functionality. I want to show custom pin image on mapview, click on that open custom callout bubble with image and title. With click on that callout bubble view I would like to do some functionality. How to achieve this? Any help will be appreciated

like image 960
user2996143 Avatar asked Jan 12 '23 02:01

user2996143


2 Answers

Head over to CocoaControls for custom controls. I bet you'll find something useful for your requirement.

Here are some search results from CocoaControls:

  • Callout
  • Bubble
  • Popup

Custom Pin Image

There are already questions on SO which answer this here and here and many more. I daresay you'll find your answer among them. Basically, the code is

- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id<MKAnnotation>)annotation
{
    if([annotation isKindOfClass:[MKUserLocation class]])
    return nil;

    NSString *annotationIdentifier = @"CustomViewAnnotation";
    MKAnnotationView* annotationView = [mapview dequeueReusableAnnotationViewWithIdentifier:annotationIdentifier];
    if(!annotationView)
    {
        annotationView = [[MKAnnotationView alloc] initWithAnnotation:annotation
                                                  reuseIdentifier:annotationIdentifier]];
    }
    annotationView.image = [UIImage imageNamed:@"map_location_pin.png"];
    annotationView.canShowCallout= YES;

    return annotationView;
}
like image 163
aksh1t Avatar answered Jan 21 '23 02:01

aksh1t


You need to create custom Annotations.

https://developer.apple.com/library/ios/documentation/userexperience/conceptual/LocationAwarenessPG/AnnotatingMaps/AnnotatingMaps.html

like image 27
manya Avatar answered Jan 21 '23 01:01

manya