下面是编程之家 jb51.cc 通过网络收集整理的代码片段。
编程之家小编现在分享给大家,也给大家做个参考。
#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,110,110)]; UIImageView *imageview=[[UIImageView alloc]initWithFrame:CGRectMake(0,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];
以上是编程之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。