0

i'm developing and iphone app and i'm working with Mappy SDK IOS.

i arrived to display the map and show my current location. but i have a problem with adding some markers on my map.

i have an NSArray that contains some objects with longitude and latitude properties. my code to display the markers is :

    - (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view from its nib.
    
    //initialisation mot de passe + user
    [MPInit initialisation:MAPPY_API_KEY];
    [RMMapView class];
    
    //show user location
    self.mapView.showsUserLocation = NO;
    self.mapView.showPoi = YES;
    
    //set delegate
    self.mapView.delegate = self;
    
    MPMarkerManager *markerManager = [self.mapView markerManager];
    MPMarkerCategory * category = [markerManager getCategory:@"storeLocations"];
    
    //remove old elements   
    [category.dataSource removeAllElements];
    
    //add markers on map
    for(int i=0; i<self.arrayStores.count; i++) {
        NSLog(@"add store %d on the map", i);
        NSDictionary* currentStore = [self.arrayStores objectAtIndex:i];
        float latitude  = [[currentStore objectForKey:@"latitude"] floatValue];
        float longitude = [[currentStore objectForKey:@"longitude"] floatValue];
        
        CLLocationCoordinate2D locationStore = CLLocationCoordinate2DMake(latitude, longitude);

        //create a new POI object with location 
        MPPoi * poi = [[MPPoi alloc] initWithUId:[currentStore objectForKey:@"title"] withLocation:locationStore];
        [category.dataSource addElement:poi];
        self.mapView.centerCoordinate = locationStore;
        [poi release];
    }
    
    //category settings 
    category.markerColor = [UIColor greenColor];
    //[category setOptimalZoom:YES];//set the zoom to be optimal : show all poi in the category
    [category setHideLabelOnTheFirstShow:NO];
    [category setAnimateAtFirstShow:YES];
    
}

and here is the log displayed on the console:

2012-06-14 17:01:18.359 Koutoubia[609:607] MappyKit version:1.40
2012-06-14 17:01:18.672 Koutoubia[609:607] add store 0 on the map

i'm i doing something wrong ?? because markers aren't displayed

the doc for adding markers on the documentation is :

//add a marker on map
   MPMarkerManager *markerManager = [viewController.mapView markerManager];
   MPMarkerCategory * category = [markerManager getCategory:HMP_LOC_CATEGORY];
   //remove old elements    
   [category.dataSource removeAllElements];
   //create a new POI object with location  
   MPPoi * poi = [[MPPoi alloc] initWithUId:locationData.address withLocation:findLocation];
   [category.dataSource addElement:poi];
   [poi release];

the link of the documentation is here

any ideas ?? thanks in advance

4

1 に答える 1

0

私は解決策を見つけました、問題は私が初期化してそれをメソッドに追加するのを忘れたことMPMarkerCategoryです:markerManagerviewDidLoad

//Marker initialization
    MPMarkerManager *markerManager = [self.mapView markerManager];
    //add a new category with green default color
    [markerManager addCategory:STORE_LOC_CATEGORY withColor:[UIColor greenColor]];
于 2012-06-15T09:15:44.547 に答える