Pergunta

Eu tenho este código:

CGDataProviderRef provider = CGDataProviderCreateWithFilename([myFile UTF8String]);
CGImageRef img = CGImageCreateWithJPEGDataProvider(provider, NULL, true, kCGRenderingIntentDefault);

Mais tarde, carrego esse CGIMAGEREF em uma UIImage desta maneira:

UIImage *uiImage = [[UIImage alloc] initWithCGImage:destImage];

Eu gostaria de desenhar um círculo sobre essa imagem. O ponto é que o círculo se move para que ele seja excluído e redesenhado. Eu acho que a melhor maneira de realizar isso é com as camadas, então minha pergunta é: como posso adicionar uma camada a esse código e desenhar um círculo nele? Como posso redefinir a camada e redesenhar esse círculo?

Obrigada!

Foi útil?

Solução

Você deseja usar um UIImageView e, em seguida, adicionar uma camada separada a essa visualização. Se a sua camada [círculo] se mover, basta definir sua propriedade de posição para o novo centro; O sistema de visualização cuidará de recompor tudo.

Para que seu círculo apareça na camada, você pode usar uma imagem fixa, caligia de subclasse e substituir o drawincontext:, ou definir o delegado e implementar o Drawlayer: Inconntext:.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top