まさか delegate を使うとは思わなんだ。
「@property(readwrite) float scale」みたいなのがあると思うじゃない。
scrollView.delegate = self のようにしておいて、
- [UIScrollViewDelegate scrollViewDidEndZooming:withView:atScale:]
で現在のスケールがやって来る。若干不思議な設計だ。
拡大率の指定は直接はできないけど(がんばるならスクロールビューに入れたビューの frame を設定したり、transform を設定したりで できるかも だけど、そのうち動かなくなりそうで若干怖い)、同じく delegate の、
- (UIView *)[UIScrollViewDelegate viewForZoomingInScrollView:]
で次に注目すべきビューを指定できるので、注目させたい単位ごとにサブビューのグループを作るように、という設計なのだな。
ふむ、もうしばらく格闘してみよう。
[12/22 7:10 追記] ダブルタップでのズームは、これ か。ややこしい。
コメントを書く