自定义标记图标 iOS 质量差
Custom marker icon iOS bad quality
我正在尝试向标记添加图像。如何达到最好的质量?如您所见,Google 地图自己增加了两倍。
您是向项目添加资产还是只添加一张图像?
因此,您需要将图像资产(命名为 - bigMarker.png、bigMarker@2x.png、bigMarker@3x.png)添加到您的项目资产,如屏幕截图。这在 iOS 9.
上运行良好
我在 viewDidLoad 中的代码示例:
// Add custom position in Kansas
CustomAnnotation *annotation = [CustomAnnotation new];
annotation.title = @"Elevation Burger";
annotation.subtitle = @"The best buns...";
annotation.coordinate = CLLocationCoordinate2DMake(39.0119020f,-98.4842460f);
[self.myMap addAnnotation:annotation];
委托中的这个:
- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id<MKAnnotation>)annotation {
MKAnnotationView *annotationView = nil;
if (annotation != mapView.userLocation) {
annotationView = [[MKAnnotationView alloc] initWithAnnotation:annotation
reuseIdentifier:nil];
annotationView.canShowCallout = YES;
annotationView.image = [UIImage imageNamed:@"bigMarker"];
annotationView.leftCalloutAccessoryView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"burgerBitmap"]];
UIButton *accessoryButton = [UIButton buttonWithType:UIButtonTypeDetailDisclosure];
UIImage *disclosureButtonImage = [[UIImage imageNamed:@"disclosure"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
[accessoryButton setImage:disclosureButtonImage forState:UIControlStateNormal];
annotationView.rightCalloutAccessoryView = accessoryButton;
}
return annotationView;
}
我正在尝试向标记添加图像。如何达到最好的质量?如您所见,Google 地图自己增加了两倍。
您是向项目添加资产还是只添加一张图像?
因此,您需要将图像资产(命名为 - bigMarker.png、bigMarker@2x.png、bigMarker@3x.png)添加到您的项目资产,如屏幕截图。这在 iOS 9.
上运行良好我在 viewDidLoad 中的代码示例:
// Add custom position in Kansas
CustomAnnotation *annotation = [CustomAnnotation new];
annotation.title = @"Elevation Burger";
annotation.subtitle = @"The best buns...";
annotation.coordinate = CLLocationCoordinate2DMake(39.0119020f,-98.4842460f);
[self.myMap addAnnotation:annotation];
委托中的这个:
- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id<MKAnnotation>)annotation {
MKAnnotationView *annotationView = nil;
if (annotation != mapView.userLocation) {
annotationView = [[MKAnnotationView alloc] initWithAnnotation:annotation
reuseIdentifier:nil];
annotationView.canShowCallout = YES;
annotationView.image = [UIImage imageNamed:@"bigMarker"];
annotationView.leftCalloutAccessoryView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"burgerBitmap"]];
UIButton *accessoryButton = [UIButton buttonWithType:UIButtonTypeDetailDisclosure];
UIImage *disclosureButtonImage = [[UIImage imageNamed:@"disclosure"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
[accessoryButton setImage:disclosureButtonImage forState:UIControlStateNormal];
annotationView.rightCalloutAccessoryView = accessoryButton;
}
return annotationView;
}