【问题标题】:How to display stored locations from a database on a map in android?如何在android的地图上显示数据库中存储的位置?
【发布时间】:2012-12-17 11:23:32
【问题描述】:

我想构建一个应用程序,该应用程序将在距用户一定半径范围内的地图上显示存储在数据库中的餐厅(名称、纬度、经度等...)。然后,用户可以单击特定餐厅以查看更多信息或添加关于该餐厅的评论。我知道如何使用 JSON 和 PHP 从数据库中获取餐厅名称并将它们显示在列表视图中。但我希望能够在地图上显示它们。有人可以为我指出如何完成这项工作的正确方向。

【问题讨论】:

    标签: android phpmyadmin android-maps


    【解决方案1】:

    假设您有一个可以从数据库中的数据构建的 Restaurant 对象列表:

    private void addMarkers(List<Restaurant> restaurants){
        for(Restaurant res : restaurants){
            MarkerOptions options = new MarkerOptions();
            options.position(new LatLng(res.getLatitude(), res.getLongitude()));
            options.title(res.getName());
            options.snippet(tagsnap.getAddress());
            getMap().addMarker(options);
        }
    }
    

    这样称呼它:

    @Override
    public void onViewCreated(View view, Bundle savedInstanceState) {
        ...
        ...
        List<Restaurant> restaurants = databaseHelper.fetchAllRecordsAsRestaurantList();
        addMarkers(restaurants);
    }
    

    【讨论】:

      【解决方案2】:

      您需要获取要显示的餐厅的 GPS 坐标。您可以显示名称,但需要将坐标传递给 MapView,以便它可以将它们显示为地图上的叠加项目。

      这些教程将帮助您:

      https://developers.google.com/maps/documentation/android/

      http://www.vogella.com/articles/AndroidGoogleMaps/article.html

      【讨论】:

      • 谢谢!我会试试这些指南。
      猜你喜欢
      • 2019-04-18
      • 1970-01-01
      • 1970-01-01
      • 2015-08-13
      • 2011-10-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-18
      相关资源
      最近更新 更多