私はユーザーが登録できるアンドロイドアプリを持っており、ログインしたときに、この画像のように地図上のマーカーで表示されます。しかし、私はちょうど100メートル以内に近くのマーカーを表示したい。Android - 周辺のユーザーマーカーを表示するにはどうすればよいですか?
正確なコーディングセクションとすべてのオブジェクト初期化を手伝ってください。ここで
データベースからすべてのユーザーマーカー(緯度、LNG)を取得するための私のコードです:
private void getNearbyMarkers(){
geoFireRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot locationSnapshot : dataSnapshot.getChildren()){
LocationData locations = locationSnapshot.getValue(LocationData.class);
final Double tempLat = Double.parseDouble(locations.getLatitude());
final Double tempLng = Double.parseDouble(locations.getLongitude());
final String uid = locations.getUid();
databaseReference3.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
String name = dataSnapshot.child(uid).child("name").getValue().toString();
String business = dataSnapshot.child(uid).child("business").getValue().toString();
LatLng allLatLang = new LatLng(tempLat,tempLng);
MarkerOptions markerOptions = new MarkerOptions();
markerOptions.position(allLatLang);
markerOptions.title(name);
markerOptions.snippet(business);
markerOptions.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_ORANGE));
locationMarker = mMap.addMarker(markerOptions);
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
}
あなたの時間とこの問題での支援のためにありがとうございました。 setupMap
で
私はちょうど 'locationMarker = mMap.addMarker(markerOptions.visible(false));を変更しなければならなかった; そしてそれは完璧な答えだったので、 – Tamim