-2

私はこのエラーが発生しています:

07-21 11:05:21.484: E/AndroidRuntime(1329): 
       java.lang.IndexOutOfBoundsException: Invalid index 0, size is 0
07-21 11:05:21.484: E/AndroidRuntime(1329): 
       at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:251)

この種のエラーにどう対処すればよいですか? ここに私のコードがあります:

try {
  List<Address> addresses = mGeocoder.getFromLocation(gettextLat, gettextLong, 1);
  Log.e("TAG", addresses.get(0).getAddressLine(0) + 
        addresses.get(0).getAddressLine(1) + 
        addresses.get(0).getAddressLine(2));
  String myAddress = addresses.get(0).getAddressLine(0) + 
        addresses.get(0).getAddressLine(1) + addresses.get(0).getAddressLine(2);
  textAddresss.setText(myAddress);
} catch (IOException e) {
  e.printStackTrace();
}
4

1 に答える 1

1

あなたArrayListは空です。sizeアクセスする前に確認してください

List<Address> addresses = mGeocoder.getFromLocation(gettextLat, gettextLong, 1);
if (addresses.size() > 0) {
    Log.e("TAG", addresses.get(0).getAddressLine(0)
            + addresses.get(0).getAddressLine(1)
            + addresses.get(0).getAddressLine(2));
    String myAddress = addresses.get(0).getAddressLine(0)
            + addresses.get(0).getAddressLine(1)
            + addresses.get(0).getAddressLine(2);
    textAddresss.setText(myAddress);
}
于 2013-07-21T11:46:20.607 に答える