तो मूल रूप से आप मानचित्र परिवर्तनों को सुनना चाहते हैं और हर बार जब उपयोगकर्ता मानचित्र खींच रहा है और परिणामों को फिर से लोड कर रहा है? यहाँ आप क्या करना चाहिए:
public class AwesomeCameraActivity extends FragmentActivity implements
OnCameraIdleListener,
OnMapReadyCallback {
private GoogleMap mMap;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my_camera);
SupportMapFragment mapFragment =
(SupportMapFragment) getSupportFragmentManager()
.findFragmentById(R.id.map);
mapFragment.getMapAsync(this);
}
@Override
public void onMapReady(GoogleMap map) {
mMap = map;
mMap.setOnCameraIdleListener(this);
// Show the initial position
mMap.moveCamera(CameraUpdateFactory
.newLatLngZoom(new LatLng(YOUR_LATITUDE, YOUR_LONGITUDE), 10));
}
@Override
public void onCameraIdle() {
// The camera/map stopped moving, now you can fetch the center of the map
GeoPoint center = mMap.getProjection().fromPixels(mMap.getHeight()/2, mMap.getWidth()/2);
double centerLat = (double)center.getLatitudeE6()/(double)1E6;
double centerLng = (double)center.getLongitudeE6()/(double)1E6;
// Now fire a new search with the new latitude and longitude
searcher.setQuery(new Query().setAroundLatLng(new AbstractQuery.LatLng(centerLat, centerLng)).setAroundRadius(5000))
}
}
स्रोत
2017-10-10 11:20:09
हाय Thofiq, ओवरफ्लो स्टैक करने के लिए आपका स्वागत है! आपकी समस्या का समाधान करने वाले उत्तरों को स्वीकार/अपनाने के लिए याद रखें, जो आपकी मदद करने के लिए समय लेते हैं और अन्य लोगों को यह जानने में मदद करते हैं कि यह सहायक था;) – PLNech