Question

J'utilise la carte SDK mapbox avec une carte hors ligne. J'ajoute une superposition de RMPath à la carteView et tout est montré OK.

problème non. 1: Lors du défilement de la carte, la superposition de RMPath est également défilée, mais elle est parfois dessinée avec un décalage (un endroit où il y a un instant il y a un instant) pour une fraction d'une seconde, après cela, il se met à sa place normale, et cela crée une sensation de scintillement. Pourquoi cela se produit et comment puis-je vous en débarrasser?

problème non. 2: Lors du défilement de la carte, la supermarker et la superposition RMPath "vibre", c'est comme si la superposition tente de "rattraper" avec sa position normale lorsque la carte est défilée. Ce n'est que quelques pixels, mais quand zoomé, ça a l'air assez mauvais. Cela se produit très probablement parce que la méthode -Draw () est appelée uniquement lorsque la carte est déplacée plus qu'un pixel. Comment puis-je faire défiler les superpositions Schoher?

Mes recherches ont abouti à absolument rien, alors toute aide est accueillie.

P.s. Testé sur iPhone3gs et iPhone4s, mêmes problèmes sur les deux.

Était-ce utile?

La solution

RMPath est obsolète, essayez d'utiliser Rmshape à la place. N'oubliez pas non plus de définir la boîte de sélection de votre annotation avant de l'ajouter à la carte (SetboundingboxFromLocations peut être utile).

Exemple:

pathAnnotation = [[RMAnnotation alloc]initWithMapView:mapView    coordinate:CLLocationCoordinate2DMake(long,lat) andTitle:@"path"];
[pathAnnotation setBoundingBoxFromLocations:pathLocations];

puis dans votre coucheForannotation ():

RMShape *path = [[RMShape alloc] initWithView:mapView] ;
[path setLineColor:[UIColor colorWithRed:0.2 green:0.7 blue:1 alpha:0.7]];
[path setLineWidth:4];

// Create real coordinates from data
for(int idx = 0; idx < pathPoints.count; idx++)
{

    CLLocationCoordinate2D coords = CLLocationCoordinate2DMake(pathPoints[idx].latitude,pathPoints[idx].longitude);

    // First point
    if( idx == 0){
        [path moveToCoordinate:coord];
    }else{
        [path addLineToCoordinate:coord];
    }
}
return path;

Autres conseils

Pour votre problème N ° 2, je pense que cela pourrait être relatif à Ce problèmesur mapbox iOS sdk

Pour le problème N ° 1, j'ai remarqué le même comportement, mais uniquement lorsque des annotations sont ajoutées lorsque la carte défile / zoom.Après la stabilisation de la carte, les annotations vont à la bonne position.Je cherche toujours pour ça.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top