-1
私は質問があります。アンドロイドマップのutilsによってgoogleマップのクラスタマーカーとして複数の画像ビューとtextviewsのレイアウトを設定できますか?そしてどうやって?誰かが良い例を提供する場合、それは私が何をしたいのこの例素晴らしいことだ:クラスタマーカーとしてxmlレイアウトを使用する方法Android
おかげ
私は質問があります。アンドロイドマップのutilsによってgoogleマップのクラスタマーカーとして複数の画像ビューとtextviewsのレイアウトを設定できますか?そしてどうやって?誰かが良い例を提供する場合、それは私が何をしたいのこの例素晴らしいことだ:クラスタマーカーとしてxmlレイアウトを使用する方法Android
おかげ
私がいることを使用したものよりも簡単な方法があるかどうか私にはわかりませんデータセットが大きい場合、このメソッドは時間がかかりますので、小さなデータセットで使用するか、デザイナーと他のオプションを話してください。
このレイアウトのビットマップを取得したいレイアウトを作成することができます。これは、マーカーの追加だけが画像を取得するため、ビットマップをマーカーとしてマーカーに追加します。
最初のステップに膨張し、あなたのレイアウトにデータを設定
View marker = ((LayoutInflater) getActivity()
.getSystemService(Context.LAYOUT_INFLATER_SERVICE))
.inflate(R.layout.marker_layout, null);
二
Bitmap bitmap = createDrawableFromView(
getActivity(), marker);
は第三これは
MarkerOptions mo = new MarkerOptions().position(
new LatLng(lat, lng))
// .title(address)
.snippet(i + "")
.icon(BitmapDescriptorFactory
.fromBitmap(bitmap));
Marker customMarker = googleMap.addMarker(mo);
マーカーとしてビットマップを追加し、このビューからビットマップを取得ビットマップを取得する方法
public static Bitmap createDrawableFromView(Context context, View view) {
DisplayMetrics displayMetrics = new DisplayMetrics();
if (context != null) {
((Activity) context).getWindowManager().getDefaultDisplay()
.getMetrics(displayMetrics);
view.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT));
view.measure(displayMetrics.widthPixels, displayMetrics.heightPixels);
view.layout(0, 0, displayMetrics.widthPixels,
displayMetrics.heightPixels);
view.buildDrawingCache();
Bitmap bitmap = Bitmap.createBitmap(view.getMeasuredWidth(),
view.getMeasuredHeight(), Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(bitmap);
view.draw(canvas);
return bitmap;
}
return null;
}
それはとても痛いものでした。
私はそれを試してみるつもりですが、このコードはクラスタではありませんが、私のコードの中で実装しようとしますが、もう1つの質問はcreateDrawableFromViewを使用する前にデータを設定する必要があり、これはonBeforeClusterRenderedコンストラクタ内にありますか? – Blacksword
はいビットマップを作成する前にすべてのデータを設定しなければなりません URL画像がある場合は最初にロードし、次にマーカーを作成します。私はonBeforeClusterRenderedを使用しませんでしたので、わかりません。 –
それは私のために働いた感謝ハラ – Blacksword