从Google地图获取所选位置名称

时间:2016-08-19 11:27:39

标签: android google-maps

我在android中创建谷歌地图应用程序我需要获取选择的位置文本,如“abc-Hotel”和“xyz-school”这些是Android谷歌地图中的默认超链接所以我需要使用这样我得到的位置来自latlang的地址使用“Geocoder”,但我没有获得收藏位置文本。然后我如何获得选定的位置文本。

谢谢。

谷歌地图工作图像

enter image description here

i need to get location text like Rajendra swamy temple

2 个答案:

答案 0 :(得分:2)

obj.getAddressLine(0);
obj.getCountryName();
obj.getCountryCode();
obj.getAdminArea();
obj.getPostalCode();
obj.getSubAdminArea();
obj.getLocality();
obj.getSubThoroughfare();

如果您想在地址中获得更多详细信息,那么您可以使用此方法。

$myarr = array(3,5,7,8,4,6);
$newkeys = array('h','c','s','e','r','t');
$c=array_combine($newkeys ,$myarr);

我的代码工作正常.. 希望这有帮助。

答案 1 :(得分:0)

使用Android框架位置API中的Geocoder类,您可以将地址转换为相应的地理坐标。此过程称为地理编码。或者,您可以将地理位置转换为地址。地址查找功能也称为反向地理编码。

示例示例,

Geocoder geocoder= new Geocoder(this, Locale.ENGLISH);

        try {

              //Place your latitude and longitude
              List<Address> addresses = geocoder.getFromLocation(37.423247,-122.085469, 1);

              if(addresses != null) {

                  Address fetchedAddress = addresses.get(0);
                  StringBuilder strAddress = new StringBuilder();

                  for(int i=0; i<fetchedAddress.getMaxAddressLineIndex(); i++) {
                        strAddress.append(fetchedAddress.getAddressLine(i)).append("\n");
                  }

                  myAddress.setText("I am at: " +strAddress.toString());

              }

              else
                  myAddress.setText("No location found..!");

        } 
        catch (IOException e) {
                 // TODO Auto-generated catch block
                 e.printStackTrace();
        }
    }

来源:https://developer.android.com/training/location/display-address.html