我一直在尋找相當多的東西,而且我還沒有真正找到好的答案。 我試圖改變管腳在幾個不同位置的顏色(1個紅,1紫色..)在不同位置更改地圖引腳的顏色
我有一個單獨的註記類 pinPlaceMark.h #進口 #進口
@interface PinPlaceMark : NSObject <MKAnnotation>
@property(nonatomic, readwrite) CLLocationCoordinate2D coordinate;
@property(nonatomic, strong) NSString *myTitle;
@property(nonatomic, strong) NSString *mySubTitle;
- (id) initWithCoordinate: (CLLocationCoordinate2D) coordinate;
@end
pinPlaceMark.m
#import "PinPlaceMark.h"
@implementation PinPlaceMark
- (id) initWithCoordinate:(CLLocationCoordinate2D)coordinate
{
self = [super init];
if (self)
{
self.coordinate = coordinate;
}
return self;
}
- (NSString *) subtitle
{
return self.mySubTitle;
}
- (NSString *) title
{
return self.myTitle;
}
@end
mapViewController.h
#import <UIKit/UIKit.h>
#import <MapKit/MapKit.h>
#import "PinPlaceMark.h"
@interface MapViewController : UIViewController <MKMapViewDelegate>
@property (nonatomic, strong) IBOutlet MKMapView *mapView;
mapViewController.m
- (void) addPinWithCoordinate: (CLLocationCoordinate2D) pinLocation
{
PinPlaceMark *placeMark = [[PinPlaceMark alloc] initWithCoordinate:pinLocation];
placeMark.myTitle = @"This is my title";
placeMark.mySubTitle = @"This is my subtitle";
[self.mapView addAnnotation:placeMark];
}
- (void)viewDidLoad
{
[super viewDidLoad];
self.mapView.delegate = self;
CLLocationCoordinate2D pinLocation1;
pinLocation1.latitude = 40.7101843;
pinLocation1.longitude = -74.0061474;
[self addPinWithCoordinate:pinLocation1];
}
- (MKAnnotationView *) mapView:(MKMapView *)mapView viewForAnnotation:(id<MKAnnotation>)annotation
MKPinAnnotationView *pinView = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"id"];
pinView.pinColor = MKPinAnnotationColorPurple;
return pinView;
只是一種顏色。 我該如何着手改變不同位置的顏色 我試着創建MKPinAnnotationView的另一個實例並根據座標返回它,但它不適合我。
感謝您提供的任何幫助。
您能否介紹一下您的註釋是如何創建的以及它們的屬性是什麼? – pbasdf 2014-09-02 18:48:13
我更新了問題。謝謝 – MendyK 2014-09-02 19:03:27
請參閱http://stackoverflow.com/questions/24215210/does-mkannotationview-buffer-its-input-queue。你並不是真的想要在「座標上」引用顏色,而是在每個註釋的其他不同屬性上(你可以在你的PinPlaceMark類中添加一個「pinColor」屬性,在添加註釋時設置它,在viewForAnnotation從註解的pinColor屬性設置視圖的pinColor – Anna 2014-09-02 19:06:28