【问题标题】:How to get Latitude and Longitude value from kataklisma / android-google-places Library如何从 kataklisma / android-google-places 库中获取纬度和经度值
【发布时间】:2013-12-12 13:55:10
【问题描述】:

我已经实现了 kataklisma / android-google-places library 来解析 Google Places API 数据,但是我找不到以下方法

place.getLatitude();
place.getLongitude();

我得到了所有这些

place.getName()
place.getFormattedAddress()
place.getIcon()
place.getId()
place.getReference()
place.getVicinity()

通过以下代码成功

if (result.getStatusCode() == StatusCode.OK) {

        List<Place> placesList = (List<Place>) result.getResults();
        for (Place place : placesList) {

            StaticParsedData.PLACE_NAMEs.add(place.getName());
            StaticParsedData.PLACE_FORMATED_ADDRESSEs.add(place
                    .getFormattedAddress());
            StaticParsedData.PLACE_ICONs.add(place.getIcon());
            StaticParsedData.PLACE_IDs.add(place.getId());
            StaticParsedData.PLACE_REFRENCEs.add(place.getReference());
            StaticParsedData.PLACE_VISINITIEs.add(place.getVicinity());

        }

但我还需要获取这些地方的纬度和经度,但我找不到任何方法来获取纬度和经度值。我认为这个库中没有以下方法。

place.Latitude();
place.Longitude();

可能是我做错了。任何机构都可以指导我。如何通过这个库获取任何地方的经纬度

这里还有一张显示packages层次结构及其libs的库图像

或者有没有其他的 Robust 库来解析 Google Places API 的数据

【问题讨论】:

    标签: android json parsing google-places-api


    【解决方案1】:

    我解决了我的问题。是的,我做错了。为了得到这个地方的纬度和经度,我们必须像这样从 Geometry 对象中提取它。

    首先你必须得到像这样的几何对象

    if (result.getStatusCode() == StatusCode.OK) {
    
        List<Place> placesList = (List<Place>) result.getResults();
        for (Place place : placesList) {
    
    
            StaticParsedData.PLACE_GEOMETERIEs.add(place.getGeometery());
    
        }
    

    然后像这样提取任何地方的个体经纬度

    for (int i = 0; i < StaticParsedData.PLACE_NAMEs.size(); i++) {
    
                                        Geometry geometry = StaticParsedData.PLACE_GEOMETERIEs
                                                .get(i);
                                        com.a2plab.googleplaces.models.Place.Location location = geometry.location;
                                        Double lat = location.lat;
                                        Double lng = location.lng;
    
                                        MarkerOptions placesIndicater = new MarkerOptions()
                                                .icon(placeMarkerIcon)
                                                .title(StaticParsedData.PLACE_NAMEs
                                                        .get(i))
                                                .snippet(
                                                        StaticParsedData.PLACE_VISINITIEs
                                                                .get(i))
                                                .position(new LatLng(lat, lng));
    
                                        placeMarker = map
                                                .addMarker(placesIndicater);
                                        placeMarkerRef.add(placeMarker);
    
                                    }
    

    【讨论】:

      猜你喜欢
      • 2015-02-26
      • 2017-10-04
      • 2017-11-20
      • 1970-01-01
      • 2019-09-12
      • 1970-01-01
      • 2022-07-15
      • 1970-01-01
      • 2014-01-21
      相关资源
      最近更新 更多