1

緯度、経度の座標に基づいて場所の住所を取得しようとするアプリケーションがあります。特定の座標のすべての住所を印刷しようとすると、単一の住所しか取得できません。提供された座標のすべてのアドレスのリストを取得する方法はありますか。私のコードスニペットは次のとおりです。

locationLatitude、locationLongitudeはString型であり、doubleに変換されます。Addressは、州、都市、国などの詳細を取得するためのgetterメソッドとsetterメソッドを持つクラスです。

List<Address> addresses = geoCoder.getFromLocation(Double.parseDouble(locationLatitude),
Double.parseDouble(locationLongitude), 1);
StringBuffer  addressAsString  = new StringBuffer("");
if(!addresses.isEmpty()){
    for (int i = 0; i < addresses.get(0).getMaxAddressLineIndex(); i++)
        addressAsString.append(addresses.get(0).getAddressLine(i) + "\n");
    return addressAsString.toString();
}
4

1 に答える 1

0

すべてのアドレスをループし、getFromLocationの3番目のパラメーターを1ではなく10に変更して、指定された地理ポイントにある10個の周囲の場所すべてをフェッチします。

List addresses = geoCoder.getFromLocation(Double .parseDouble(locationLatitude), Double.parseDouble(locationLongitude), 10); 

for (Address addr:List addresses) {

  for (int i = 0; i < addr.getMaxAddressLineIndex(); i++) {
  // your previous code here
  }
}
于 2010-09-06T07:19:14.123 に答える