ここで尋ねられたUIScrollViewの質問の多くを読みましたが、この問題に答えたものはありませんでした。
他のサブビューを含むビューをズームするUIScrollViewがあります。ズームが発生しているときは、ビューのサブビューを特定の場所に移動する必要があります。UIScrollViewのlayoutSubviewsメソッドでフレームを適宜変更することで、これを実現できます。
iOS 3.2以下では、これは、zoomToRect:animated:メソッドを使用した指ズームと実用的なズームの両方でうまく機能します。
iOS 4.0以降では、これは指のズームにのみ最適です。ZoomToRect:animated:を使用した実用的なズームでは、layoutSubviewsの呼び出しは1回だけ(ズームの最後に)発生します。サブビューがズームとともにスムーズな位置変更を行えるように、ズーム中に何度もこのメソッドを呼び出す必要があります。
したがって、要約すると、iOS 3.2では、layoutSubviewsの呼び出しは何度も発生し、iOS 4.0では、zoomToRect:animated:を呼び出したときにlayoutSubviewsの呼び出しは1回だけ発生します。誰かが私の問題の解決策を知っていますか?