RMPath pisca e "vibra" durante a rolagem RMMapView (MapBox SDK)
Pergunta
Eu estou usando o MapBox SDK com um mapa off-line.Eu estou adicionando um RMPath sobreposição para o mapView e tudo é mostrado ok.
problema nenhum.1: ao deslocar o mapa a RMPath sobreposição é deslocada também, mas às vezes ele é desenhado com um desvio (um local onde ele foi apenas um momento atrás) por apenas uma fração de segundo, depois que ele recebe é normal lugar , e isso cria uma sensação de cintilação.Por que isso acontece e como posso me livrar disso?
problema nenhum.2: ao deslocar o mapa a RMMarker e RMPath sobreposição "vibra", é como a sobreposição de tentar "conversar" com a sua posição normal quando o mapa é deslocada.É apenas alguns pixels, mas quando o zoom parece muito ruim.isso acontece, provavelmente, porque a desenhar() o método é chamado quando o mapa é movido mais do que apenas um pixel.Como posso fazer para que as sobreposições de deslocamento mais suave?
Meu pesquisas resultaram em absolutamente nada, então qualquer ajuda é bem-vinda.
p.s.testado em iPhone3GS e iPhone4S, mesmo problemas em ambos.
Solução
RMPath é preterido, tente usar RMShape em vez disso.Também não se esqueça de definir a caixa delimitadora da sua anotação antes de adicioná-lo ao mapa (setBoundingBoxFromLocations pode ser útil).
Exemplo :
pathAnnotation = [[RMAnnotation alloc]initWithMapView:mapView coordinate:CLLocationCoordinate2DMake(long,lat) andTitle:@"path"];
[pathAnnotation setBoundingBoxFromLocations:pathLocations];
e, em seguida, em seu layerForAnnotation() :
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;
Outras dicas
Para o seu problema n ° 2, acho que isso pode ser relativo a este problemano mapbox ios sdk
Para o problema n ° 1, notei o mesmo comportamento, mas apenas quando as anotações são adicionadas enquanto o mapa está rolando / zoom.Após o mapa estabilizado, as anotações vão para a posição certa.Eu ainda estou investigando por isso.