2016-08-23 8 views
4

チュートリアルhereを使用して、私はAndroidアプリでクラスタリングを正常に実装しました。 OnCameraChangeListener()はcom.google.android.gmsで廃止予定です:play-services:9.4.0では、以下の部分を実装する新しい方法がありますか?Google Maps AndroidクラスタリングOnCameraChangeListener()は非推奨

private ClusterManager<MyItem> mClusterManager; 
googleMap.setOnCameraChangeListener(mClusterManager); 

EDIT:

Iは直接クラスOnCameraMoveListenerのオブジェクトを期待している()これはsetOnCameraMoveListenerので動作しない

googleMap.setOnCameraMoveListener(mClusterManager); 

ようsetOnCameraMoveListenerによってsetOnCameraChangeListenerを交換しようとしました。 mClusterManagerのキャストも機能しません。

googleMap.setOnCameraMoveListener((GoogleMap.OnCameraMoveListener) mClusterManager); 
+0

これまでに何を試みましたか?[Documentation](https://developers.google.com/android/reference/com/google/android/gms/maps/GoogleMap.OnCameraChangeListener)に記載されているように、OnCameraMoveListener()を使用してみましたか?非難された 'OnCameraChangeListener()'の代わりに与えられたものですか?あなたのために働かなかったのですか?ログにコードスニペットとエラーがある場合は、それらを共有してください。 – Teyam

+0

私が試したことを示すために編集されました。 –

答えて

13

あなたが

gooleMap.setOnCameraIdleListener(mClusterManager)を使用する必要があります。

代わりに

googleMap.setOnCameraMoveListener(mClusterManager)。

ClusterManagerのソースコードを検索すると、ClusterManagerが新しいOnCameraIdleListenerを実装していることがわかります。

また、あなたはアンドロイドマップ-utilsの新しいにアップデートする必要があります:0.4.4

( 'com.google.maps.android:android-maps-utils:0.4.4' をコンパイル)

幸運と投票アップ... ;-)

+0

これは動作します。ありがとう! –

+1

MultiListenerはサポートされていません。そのための解決法はありますか? – KasparTr

-1

ドキュメントごとに、このインタフェースは廃止され、より詳細なオプションに置き換えられました。

このインターフェイスは廃止されました。 GoogleMap.OnCameraMoveStartedListener、GoogleMap.OnCameraMoveListener、GoogleMap.OnCameraIdleListenerに置き換えられました。 deprecated onCameraChangeメソッドが新しいカメラ変更リスナーのメソッドに関連して呼び出される順序は定義されていません。

+0

私はこれを知っていますが、クラスター化のためにClusterManager クラスに適用可能でしょうか。 –

1

新しく導入された4つのカメラリスナー(OnCameraIdleListenerOnCameraMoveListenerOnCameraMoveStartedListenerOnCameraMoveCanceledListener)を使用することをお勧めしていますが、まだandroid-maps-utilssetOnCameraChangeListener使用特定のバージョンと一緒に行きたい場合は

(下記の)コンパイル 'com.google.maps.android:android-maps-utils:0.4.3

をモジュールレベルのgradleファイルにコンパイルします。新しいメソッドを実装する場合は、this答えをチェックしてください。

関連する問題