0

MapKit アノテーションのカスタム イメージに問題があります。同じテストを実行しているサンプル プロジェクトをビルドすると、正常に動作します (ただし、ドロップ効果とカスタム イメージは動作しません)。

しかし、マップ ビュー プロジェクトでまったく同じ関数を使用すると、カスタム イメージが表示されません。カラーピン変更機能 MKPinAnnotationColorPurple も動かないことに気付きました。一部のプロジェクト プロパティに依存している可能性はありますか?

コードは次のとおりです。

-(MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation {
    static NSString *identifier = @"MyLocation";   

    if ([annotation isKindOfClass:[MyLocation class]]) {

        MKPinAnnotationView *annotationView = (MKPinAnnotationView *) [_mapView dequeueReusableAnnotationViewWithIdentifier:identifier];

        if (annotationView == nil) {
            annotationView = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:identifier];
        } else {
            annotationView.annotation = annotation;
        }
        annotationView.enabled = YES;
        annotationView.animatesDrop=    NO;
        annotationView.image=[UIImage imageNamed:@"arrest.png" ];//here we use a nice image instead of the default pins


        annotationView.canShowCallout = YES;
        UIButton *btnDetails = [UIButton buttonWithType:UIButtonTypeDetailDisclosure];
        //[btnDetails addTarget:self action:@selector(prova) forControlEvents:UIControlEventTouchUpInside]; 

        annotationView.rightCalloutAccessoryView=btnDetails;

        return annotationView;
    }

    return nil;
}

UIButtonTypeDetailDisclosure も表示されません (他のプロジェクトでは表示されます)。

4

0 に答える 0