Como mudar o iphone CATiledLayer fadeDuration?
Eu estou trabalhando em um aplicativo para iphone que exibe mapas lado a lado. Atualmente estou usando um CATiledLayer em um UIScrollView:
MyTiledDelegate *delegate=[[MyTiledDelegate alloc] initWithMapLayer:map];
tileLayer = [CATiledLayer layer];
tileLayer.delegate = delegate;
[scrollView.layer addSublayer:tileLayer];
[tileLayer setNeedsDisplay];
Eu escrevi e defini meu próprio delegado, que implementa o método da camada de desenho da seguinte forma:
- (void)drawLayer:(CALayer *)layer inContext:(CGContextRef)ctx{
CGRect rect =CGContextGetClipBoundingBox(ctx);
CGFloat x = fabs(round(rect.origin.x/tileSize));
CGFloat y = fabs(round(rect.origin.y/tileSize));
Tile *tile = [map getTileForMapZoom:z x:x y:y];
CGImageRef img=[tile getRealImage];
CGContextDrawImage(
ctx,
CGRectMake(tile.x*tileSize,tile.y*tileSize, tileSize,tileSize) ,
img);
}//edited for brevity
Estou incomodado com o comportamento padrão do CAtiledLayer para fadein depois que o bloco é desenhado. Além disso, às vezes o fadein não está completo (ele pára em 90 ou 95% de opacidade).
Como posso alterar ou (de preferência) remover a animação do fadein?
Eu joguei com ospeed
eduration
propriedades da minha instância CATiledLayer, sem sucesso. Eu não configuro nenhuma animação no tiledLayer. a[tiledLayer removeAllAnimation]
não muda nada também.
Obrigado por todos os ponteiros.