2012-01-13 7 views
0

私は今、オフラインマップosmdroidのデフォルトのピンチズームをオーバーライドする方法はありますか?

を作成するOsmdroidを使用して、私は、ユーザーがピンチを使用する場合

、私は唯一の外で/ズームズームしたいオフラインマップのための機能を拡大するには私自身のピンチを実装したいメートル特定のズームレベルではなく、1増分/減分ズームレベルで表示されます。

これを行う方法はありますか?私はこれについてどうやって行くことができますか?

はP.S:はい、ズームコントロールがありますが、私は

おかげ

答えて

1

nessasary変更を行う方法を確認するためにあなたがsource codeをチェックする必要があります。同様の質問hereを使用し、ピンチでカスタム機能のコードを提供しました。だから、基本的には、単に基本的にやる、私は答えていたものに拡大:2でズームレベルを上げるの一例であり

int currentZoomLevel = mOsmv.getController().getZoomLevel(); 
if (currentZoomLevel < (mOsmv.getControler().getMaxZoomLevel()) - 2) 
    mOsmv.getController().setZoomLevel(currentZoomLevel + 2); 

、代わりにちょうど1。私はまた、上記メモリからコードを書いて、あなたがgetController()に電話して現在のズームレベルと最大ズームレベルを取得すると100%確実ではありませんが、それは確かです。 mOsmv、それが得られない場合に備えて、osmdroidマップのインスタンスです。

+0

私はmondayによって実装します。基本的にOsmdroidの 'mapview.java'を変更して、新しいjarファイルを作ることができます。 –

+0

問題ありません!それがあなたの質問に答えるなら、正解とマークすることを忘れないでください:) – digerati32

1

私はMapViewのを拡張することでこれを行う方法を考えるズーム機能がより直感的にしたいと思います。

オーバーライドsetZoomLevelは1つのオプションのように見えますが、うまくいくとは思いません。私はコードが一貫していないthis.setZoomLevel様式で書かれている必要があると信じています。

は、私はあなたがピンチにコールをtrigers場所のように見えるselectObjectを上書きすることができるはずだと思うsetZoomLevel

私が配ら

関連する問題