私は PhotoScroller という名前のサンプル コード (Apple の WWDC 2010 の例) に取り組んでいます。ズーム時にカスタム UIView を返す UIScrollView
があります
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView { imageView を返します。 }
この imageView のレイヤーはCATiledLayerです。
私の問題は、ズームごとに imageView の drawRect が呼び出されることです (基本的なズームでは 10 回または 30 回)。そして、すべての画面を更新します(実際には drawrect に指定されたサイズです)。画面全体ではなく、ズームが発生したときに UIImageView の一部
を更新したいと思います (setNeedDisplay の代わりに setNeedDisplayInRect: を使用します)。
しかし、この更新メソッドの呼び出しを回避して if else を実行し、imageView の一部を更新する方法がわかりません。
UIScrollView とサブクラス化された uiview (catiledlayer を使用) の間に別の UIView を追加しようとしました。しかし、サブビューが更新されないようにする方法がわかりません:-/
誰かがアイデアを持っているなら、それは非常に役に立ちます!
ありがとう:-)
ヴィンセント