GoogleMap上のピンチイン/アウトイベントに関して

751 views
Skip to first unread message

sano

unread,
May 13, 2011, 4:53:41 AM5/13/11
to Android-SDK-Japan
いつもお世話になっております。sanoと申します。

現在、googlemap上でズームイン/アウトの制御処理をいじっています。
ズームボタンに関する制御はできたのですが、「ピンチイン/アウト」を行った時の制御ができない状態にあります。

ボタンに関しては、MapActivityを継承したメインスレッドをOnZoomListener登録し、「onZoom」内で制御しているのです
が、
ピンチイン/アウトに関しては、コールバックされるメソッドを探してもそれらしいものは見つかりませんでした。

そこで質問なのですが、
ピンチイン/アウト用のコールバックメソッドは存在するのでしょうか?

----------------------------
開発環境
 Java SE 6 Update 25
 Android OS 2.1
 Android SDK r10
 Galaxy S
----------------------------

以上です。
ご教授宜しくお願い致します。

Keiji Ariyama

unread,
May 17, 2011, 1:12:52 PM5/17/11
to android-...@googlegroups.com, sano
有山と申します。

 MapViewそのものは、ピンチイン・アウト(マルチタッチ)での操作に対応し
ていません。
 なので、自分で実装してやる必要があります。

 Android 2.2(API Level 8)からは、android.view.ScaleGestureDetectorクラ
スが追加されていて、ピンチイン・アウトの処理が簡単に実装できますが、お使
いの2.1ではまだ独自実装をする必要がありますね。

 実際のところ、オープンソースからScaleGestureDetectorのソースをとってき
て、2.1で動くように調整してやるのが簡単でいいと思いますよ。僕はそうして
ます。

--
Keiji,
ml_an...@c-lis.co.jp

sano

unread,
May 18, 2011, 10:32:10 PM5/18/11
to Android-SDK-Japan
お世話になっております。sanoです。

有山様、返答有難うございます。

教えて頂いた「android.view.ScaleGestureDetector」を使用する為、
開発環境を2.2に引き上げ、ピンチイン/アウト時のズーム制御を実装致しました。
※一応2.1に戻しても良いように、ScaleGestureDetectorのソース解析を行い
実装できるか検討してみます。

以上です。有難うございました。
> ml_andr...@c-lis.co.jp- 引用テキストを表示しない -
>
> - 引用テキストを表示 -

Keiji Ariyama

unread,
Jun 5, 2011, 5:15:54 AM6/5/11
to android-...@googlegroups.com
sanoさん

 有山です。ちょっと前の件に今更感がありますが、別件にて説明が分かりにく
いという指摘を頂いたので補足です。

 バージョン2以降のAndroidのMapViewは、ユーザーのピンチイン・アウト操作
に応じた地図のズームイン・アウトに対応しています。ただ、ズームイン・アウ
ト時に割り込みをかけるようなコールバックの仕組みを持っていません。

 従って、ピンチイン・アウト時の処理に応じて何らかの処理を行いたい場合
は、MapViewのScaleGestureDetectorで実装しなければならないと、そういうこ
とが言いたかったわけです。

 誤解を招くような書き方をしてしまい、申し訳有りませんでした。お詫びして
補足致します。
 宜しくお願い致します。

--
Keiji,
ml_an...@c-lis.co.jp

Reply all
Reply to author
Forward
0 new messages