RMPath Flickers e "Vibrates" durante lo scorrimento RMMAPView (Mapbox SDK)
Domanda
Sto usando il Mapbox SDK con una mappa offline. Sto aggiungendo una sovrapposizione RMPath a MapView e tutto è mostrato OK.
Problema no. 1: Durante lo scorrimento della mappa, anche la sovrapposizione RMPath è scrollata, ma a volte viene disegnata con un offset (un luogo in cui era solo un momento fa) solo per una frazione di secondo, dopo che arriva al suo posto normale, e questo crea una sensazione di tremolare. Perché questo accade e come posso liberarmi di esso?
Problema no. 2: Durante lo scorrimento della mappa la sovrapposizione Rmmarker e RMPath "vibra", è come la sovrapposizione tenta di "recuperare" con la sua posizione normale quando la mappa è scarnata. Sono solo alcuni pixel, ma se ingranditi sembra piuttosto male. Questo succede molto probabilmente perché il metodo -Draw () è chiamato solo quando la mappa viene spostata più di un semplice pixel. Come posso far scorrere le sovrapposizioni Scorriere?
Le mie ricerche hanno il risultato assolutamente nulla, quindi qualsiasi aiuto è accolto.
P.S. Testato su iPhone3GS e iPhone4s, stessi problemi su entrambi.
Soluzione
rmpath è deprecato, prova a usare invece l'uso di rmshape. Inoltre, non dimenticare di impostare il riquadro di delimitazione della tua annotazione prima di aggiungerlo alla mappa (è possibile utilizzare SetBoundingBoxFromlocations).
Esempio:
pathAnnotation = [[RMAnnotation alloc]initWithMapView:mapView coordinate:CLLocationCoordinate2DMake(long,lat) andTitle:@"path"];
[pathAnnotation setBoundingBoxFromLocations:pathLocations];
.
E poi nel teyerFodannotazione ():
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;
. Altri suggerimenti
Per il tuo problema n ° 2, penso che questo potrebbe essere relativo a questo problemasu Mapbox iOS SDK
Per il problema n ° 1, ho notato lo stesso comportamento, ma solo quando vengono aggiunte annotazioni mentre la mappa è a scorrimento / zoom.Dopo la stabilizzazione della mappa, le annotazioni vanno nella giusta posizione.Sto ancora indagando per questo.