1

plist ファイルを使用して、名前、住所、座標、およびアイコン (ピン イメージ名) の文字列を持つ注釈データを辞書に格納します。plistのアイコン文字列に応じて、ピン画像を使用して地図上に注釈を表示する必要があります。注釈辞書をループしますが、すべてのピンの最初の辞書からマップ ピン イメージに表示されます。

私のコード:

- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation
{


    if ([annotation isKindOfClass:[MKUserLocation class]])
        return nil;

    static NSString* AnnotationIdentifier = @"AnnotationIdentifier";
    MKPinAnnotationView* pinView = [[MKPinAnnotationView alloc]
                                    initWithAnnotation:annotation reuseIdentifier:AnnotationIdentifier];


    NSString *path = [[NSBundle mainBundle] pathForResource:@"data" ofType:@"plist"];
    NSDictionary *dict = [NSDictionary dictionaryWithContentsOfFile:path];

    for(path in dict){

        NSString *theCategory;

        theCategory = [NSString stringWithFormat:@"%@", path];
        NSLog(@"%@", path);

        NSArray *anns = [dict objectForKey:theCategory];

        pinView.image = [UIImage imageNamed:[[anns objectAtIndex:0] objectForKey:@"Icon"]];

    }

    pinView.canShowCallout=YES;


    return pinView;
}

私のplistファイルの構造:

ここに画像の説明を入力

それが私に示すもの:

ここに画像の説明を入力

4

1 に答える 1