如何验证 google 个地方 AutoCompleteTextView
How to validate google places AutoCompleteTextView
我认为这对某些人来说可能是愚蠢的问题,但我不知道为什么我不明白。我的问题是,我通过 google 个位置 api
获取纬度和经度
代码:
Geocoder geoCoder new Geocoder(this);
AutoCompleteTextView fAPSearchLocationEt;
fAPSearchLocationLayout.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
try {
List<Address> returnedaddresses = geoCoder.getFromLocationName(fAPSearchLocationEt.getText().toString(),1);
if(returnedaddresses != null){
String latForVol = String.valueOf(returnedaddresses.get(0).getLatitude());
String longForVol = String.valueOf(returnedaddresses.get(0).getLongitude());
Log.e("Lat", latForVol);
Log.e("Long", longForVol);
}else {
Log.e("Long", "Please give the correct address");
}
} catch (IOException e) {
e.printStackTrace();
}
}
});
所以,现在我想验证 AutoCompleteTextView
验证说明:
假设用户提供了错误的地址,例如 sadgdfhsfagAGDSFJDGHMSFSDFGsdfhg
或任何其他地址。所以,在这种情况下,我想在 setOnClickListener 时验证正确的地址。
Google Places 会自动执行此任务。如果你要验证 "sadgdfhsfagAGDSFJDGHMSFSDFGsdfhg" 这种事情,那么你必须实现很多逻辑。
只需在代码中使用 "ResultCallback":-
private ResultCallback<PlaceBuffer> mUpdatePlaceDetailsCallback
= new ResultCallback<PlaceBuffer>() {
@Override
public void onResult(PlaceBuffer places) {
if (!places.getStatus().isSuccess()) {
Log.e(LOG_TAG, "Place query did not complete. Error: " +
places.getStatus().toString());
return;
}
}
};
我通过
得到了这个
try {
List<Address> returnedaddresses = geoCoder.getFromLocationName(fAPSearchLocationEt.getText().toString(),1);
if(!returnedaddresses.isEmpty()){
String latForVol = String.valueOf(returnedaddresses.get(0).getLatitude());
String longForVol = String.valueOf(returnedaddresses.get(0).getLongitude());
Log.e("Lat", latForVol);
Log.e("Long", longForVol);
Log.e("Location", fAPSearchLocationEt.getText().toString());
}else {
Log.e("Long", "Please give the correct address");
}
} catch (IOException e) {
e.printStackTrace();
}
我认为这对某些人来说可能是愚蠢的问题,但我不知道为什么我不明白。我的问题是,我通过 google 个位置 api
获取纬度和经度代码:
Geocoder geoCoder new Geocoder(this);
AutoCompleteTextView fAPSearchLocationEt;
fAPSearchLocationLayout.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
try {
List<Address> returnedaddresses = geoCoder.getFromLocationName(fAPSearchLocationEt.getText().toString(),1);
if(returnedaddresses != null){
String latForVol = String.valueOf(returnedaddresses.get(0).getLatitude());
String longForVol = String.valueOf(returnedaddresses.get(0).getLongitude());
Log.e("Lat", latForVol);
Log.e("Long", longForVol);
}else {
Log.e("Long", "Please give the correct address");
}
} catch (IOException e) {
e.printStackTrace();
}
}
});
所以,现在我想验证 AutoCompleteTextView
验证说明:
假设用户提供了错误的地址,例如 sadgdfhsfagAGDSFJDGHMSFSDFGsdfhg
或任何其他地址。所以,在这种情况下,我想在 setOnClickListener 时验证正确的地址。
Google Places 会自动执行此任务。如果你要验证 "sadgdfhsfagAGDSFJDGHMSFSDFGsdfhg" 这种事情,那么你必须实现很多逻辑。
只需在代码中使用 "ResultCallback":-
private ResultCallback<PlaceBuffer> mUpdatePlaceDetailsCallback
= new ResultCallback<PlaceBuffer>() {
@Override
public void onResult(PlaceBuffer places) {
if (!places.getStatus().isSuccess()) {
Log.e(LOG_TAG, "Place query did not complete. Error: " +
places.getStatus().toString());
return;
}
}
};
我通过
得到了这个try {
List<Address> returnedaddresses = geoCoder.getFromLocationName(fAPSearchLocationEt.getText().toString(),1);
if(!returnedaddresses.isEmpty()){
String latForVol = String.valueOf(returnedaddresses.get(0).getLatitude());
String longForVol = String.valueOf(returnedaddresses.get(0).getLongitude());
Log.e("Lat", latForVol);
Log.e("Long", longForVol);
Log.e("Location", fAPSearchLocationEt.getText().toString());
}else {
Log.e("Long", "Please give the correct address");
}
} catch (IOException e) {
e.printStackTrace();
}