Hatena::Groupiphone-dev

ござ先輩のiPhone/iPad アプリ開発奮闘メモ

 | 

2010-09-11

スクロールでズーム中に位置情報を取りたい

10:50

コイツはとれないのだろうか。

ScrollView→imageView→UIButtonという階層。

scrollViewのピンチインとアウトでコールバックされる

scrollViewDidScrollの引数もしくはselfに対して、

  • self.frame.origin.x
  • self.bounds.orgin.y
  • scrollView.frame.origin.x

みたいなことやってもNullが返ってきた。オーノー。

ニッセンiPadカタログのように、imageViewの上に動的に

ボタンを配置してpopovewを叩こうとしているのですが、

単にピンチアウトされるだけなら、ピンチアウトやインが

終わった後にscaleを取得して初期表示のx,y,width,heightに

scaleを掛け合わせれば大丈夫そう。

が、ピンチアウトで拡大された状態でスクロールが走ると、

returnしているimageViewがどこからどこに移動しているのかを

取得できず、NO Future。

この辺皆さんどう考えて対処してるのだろう。。。

追記(2010/09/11 15:45)

ピンチアウトされて終った時のコールバックで、

どれだけ拡大されたかが拾えるし、ローカル座標に

変化があった事が取れる。

ピンチアウト後のスクロール終ったコールバックで

移動された座標軸が取れる。

つーことは、どこからどこに移ったのかが取れる。

ボタンからみたらimageViewはframeになるわけで

その移動距離を加味してx,y,width,heightを再設定

すれば・・・・!

ちょっとやってみよう。

更に追記(2010/09/14)

要はこういうことができればよかったことに気づきました。

http://d.hatena.ne.jp/aroundthedistance/20100914/1284437997

 |