CGImageRefおよび描画レイヤー
-
06-07-2019 - |
質問
次のコードがあります:
CGDataProviderRef provider = CGDataProviderCreateWithFilename([myFile UTF8String]);
CGImageRef img = CGImageCreateWithJPEGDataProvider(provider, NULL, true, kCGRenderingIntentDefault);
後でこの方法でUIImageにCGImageRefをロードします:
UIImage *uiImage = [[UIImage alloc] initWithCGImage:destImage];
その画像の上に円を描きたいです。ポイントは円が移動するため、削除して再描画する必要があります。これを達成する最善の方法はレイヤーを使用することだと思うので、私の質問は次のとおりです。後でレイヤーをリセットしてそのサークルを再描画するにはどうすればよいですか?
ありがとう!
解決
UIImageViewを使用し、そのビューに別のレイヤーを追加します。レイヤー[円]が移動する場合は、位置プロパティを新しい中心に設定するだけです。ビューシステムはすべてを再合成します。
レイヤーにサークルを表示するには、固定画像を使用し、CALayerをサブクラス化してdrawInContext:をオーバーライドするか、デリゲートを設定してdrawLayer:inContext:を実装します。
所属していません StackOverflow