0

CALayers を使用していくつかの画像を表示しています。これを行うには、レイヤーを作成し、そのコンテンツ プロパティを CGImageRef に設定します。CALayer にデリゲートを設定しません。

レイヤーは正常に表示されますが、別のレイヤーが最初のレイヤーの上に移動すると、下のレイヤーの内容が「消去」されます。私は、CALayer がデフォルトのデリゲートを呼び出しており、何も描画していないと仮定しています。CALayer のコンテンツを永続化するにはどうすればよいですか?

ありがとう。

4

1 に答える 1

1

上に新しいレイヤーを追加して下のレイヤーを消去しないでください。私の推測では、追加したレイヤーによって下のレイヤーが覆われている (したがって、隠されている) と思われます。テストとして、新しいレイヤーを元のレイヤーよりも小さくしてみてください。

レイヤーで setNeedsDisplay などの特定のメソッドを呼び出すと、レイヤーのコンテンツが破棄されることに注意してください。

レイヤーの再描画を強制する可能性のあるコードはありますか? (前述のように setNeedsDisplay を呼び出すようなものです。) これにより、表示されている症状が発生します。

于 2012-07-04T01:59:50.853 に答える