0

画像を表示する小さなCATiledLayersがたくさんあるBIGサブビューを備えたUIScrollViewがあります。

ZoomDidEndを使用して、新しいスケールを設定しました。

[tilesContainer setContentScaleFactor:scale];

次のすべてのレイヤーを含むタイルコンテナビューを再描画します。

-(void)drawLayer:(CALayer *)layer inContext:(CGContextRef)ctx 

そして、私は完璧な結果を得る:ズーム後の詳細な画像。

ただし、これらすべてのレイヤーが点滅します(新しいデータをロードする場合)。

どういうわけかそれを隠すことは可能ですか?

新しい画像をロードするまで、古い画像をレイヤーで保持する必要があります。

助けてくれありがとう!

4

1 に答える 1

0

CATiledLayerをサブクラス化し、fadeDurationを0に戻して、「点滅」を無効にします。

およびfadeDuration 新しく追加された画像が、タイルレイヤーのレンダリングされた表現に「フェードイン」するのにかかる時間(秒単位)。デフォルトの実装は0.25秒を返します。

于 2013-03-22T08:06:19.333 に答える