| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
cnffe
10年前发布

IOS 设置百度地图自定义标注图片,自定义泡泡

#pragma mark - BMKMapViewDelegate    // 根据anntation生成对应的View    - (BMKAnnotationView *)mapView:(BMKMapView *)mapView viewForAnnotation:(id <BMKAnnotation>)annotation    {        //普通annotation        NSString *AnnotationViewID = @"ClusterMark";        ClusterAnnotation *cluster = (ClusterAnnotation*)annotation;        ClusterAnnotationView *annotationView = [[ClusterAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:AnnotationViewID];        annotationView.size = cluster.size;        annotationView.canShowCallout = NO;//在点击大头针的时候会弹出那个黑框框        annotationView.draggable = NO;//禁止标注在地图上拖动        annotationView.annotation = cluster;    //    annotationView.image=[UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:annotation.subtitle]]];        annotationView.centerOffset=CGPointMake(0,0);                UIView *viewForImage=[[UIView alloc]initWithFrame:CGRectMake(0, 0, 110, 110)];        UIImageView *imageview=[[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 110, 110)];        [imageview setImage:[UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:annotation.subtitle]]]];        imageview.layer.masksToBounds=YES;        imageview.layer.cornerRadius = 10;        [viewForImage addSubview:imageview];        annotationView.image=[self getImageFromView:viewForImage];        return annotationView;    }      -(UIImage *)getImageFromView:(UIView *)view{        UIGraphicsBeginImageContext(view.bounds.size);        [view.layer renderInContext:UIGraphicsGetCurrentContext()];        UIImage *image = UIGraphicsGetImageFromCurrentImageContext();        UIGraphicsEndImageContext();        return image;    }      //气泡框左侧显示的View,可自定义  annotationView.leftCalloutAccessoryView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"icon_location.png"]];  //气泡框右侧显示的View 可自定义  annotationView.rightCalloutAccessoryView =selectButton;  //让标注在进入界面时就处于弹出气泡框的状态  [annotationView setSelected:YES animated:YES];