UIScrollViewの現在の拡大率の取得/設定

iPhone開発のヌマタメモ
2008年12月21日 11:23

まさか delegate を使うとは思わなんだ。
「@property(readwrite) float scale」みたいなのがあると思うじゃない。

scrollView.delegate = self のようにしておいて、
 - [UIScrollViewDelegate scrollViewDidEndZooming:withView:atScale:]
で現在のスケールがやって来る。若干不思議な設計だ。

拡大率の指定は直接はできないけど(がんばるならスクロールビューに入れたビューの frame を設定したり、transform を設定したりで できるかも だけど、そのうち動かなくなりそうで若干怖い)、同じく delegate の、
 - (UIView *)[UIScrollViewDelegate viewForZoomingInScrollView:]
で次に注目すべきビューを指定できるので、注目させたい単位ごとにサブビューのグループを作るように、という設計なのだな。

ふむ、もうしばらく格闘してみよう。

[12/22 7:10 追記] ダブルタップでのズームは、これ か。ややこしい。

コメントを書く


トラックバックはありません。

トラックバックURL: http://numata.designed.jp/mt-tb.cgi/174