android - 如何将谷歌地图搜索结果限制在特定区域
问题描述
假设我在 NYC 需要汽车服务,当我打开应用程序并选择我需要的服务时,我希望地图在 NYC 的该服务的地图中显示标记。该应用程序现在显示服务的标记,但在整个国家不只是在特定区域。
final String selected2=spinner2.getSelectedItem().toString();
ValueEventListener postlistener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (final DataSnapshot snapshot : dataSnapshot.getChildren()) {
Service service = snapshot.getValue(Service.class);
try{
if (service.getTypes().equals(selected2)) {
lat = service.getLat();
lon = service.getLon();
final LatLng point = new LatLng(lat, lon);
mMap.addMarker(new MarkerOptions()
.position(point)
.title(service.getNomservice())
.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_RED))
.snippet("Horaire d'ouverture:"+service.getTime())
);
请帮忙。
解决方案
您可以使用mMap.getProjection().getVisibleRegion().latLngBounds
获取地图可见区域的边界框,然后不要在该边界框之外添加任何具有纬度/经度的服务。
Service
此外,将其用作该应用程序要提供的任何服务的名称可能不是一个好主意,因为Service
android 已经广泛使用。
推荐阅读
- reactjs - 反应钩子中的prevstate
- sql - 没有匹配的主键?- SQL Server 管理工作室
- selenium-webdriver - 在并行运行中使用 driver.quit()
- python - 如何使用 Python 3 在 Web 浏览器中打开网站?
- javascript - 为什么这个简单的计数器会删除附加的 div?
- javascript - 以编程方式提交表单 React
- firebase - 每次热重新加载后都会加载多个图像?
- obd-ii - 使用 OBD II 获得准确的汽车油耗
- python - 计算每个数据框行中表情符号的数量
- python - 在 Pandas 中按一天中的时间对数据框进行分组