Question

J'ai ce code:

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

Plus tard, je charge CGImageRef dans un UIImage de la manière suivante:

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

J'aimerais dessiner un cercle sur cette image. Le point est le cercle se déplace donc il doit être supprimé et redessiné. J'imagine que la meilleure façon de procéder consiste à utiliser des calques; ma question est donc: comment puis-je ajouter un calque à ce code et y tracer un cercle? Comment puis-je réinitialiser le calque et redessiner ce cercle ultérieurement?

Merci!

Était-ce utile?

La solution

Vous voudrez utiliser un UIImageView, puis ajouter un calque séparé à cette vue. Si votre calque [cercle] se déplace, définissez simplement sa propriété de position sur le nouveau centre; le système de visualisation se chargera de tout recomposer.

Pour que votre cercle apparaisse dans la couche, vous pouvez utiliser une image fixe, une sous-classe CALayer et redéfinir drawInContext :, ou définir le délégué et implémenter drawLayer: inContext:.

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