【发布时间】:2015-06-27 17:22:10
【问题描述】:
我想将AutoCompleteTextView 与Geocoder 一起使用,但是当我开始输入时,建议不会弹出。
我不明白为什么不弹出建议?有什么解决办法吗?
这是我的代码:
ArrayList<String>addressList = new ArrayList<String>();
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(),android.R.layout.simple_list_item_1, addressList);
autoComplete.setAdapter(adapter);
autoComplete.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(final CharSequence s, int start, int before, int count) {
getAddressInfo(getActivity(), location, s.toString());
}
@Override
public void afterTextChanged(Editable s) {
}
});
}
private void getAddressInfo(Context context, Location location, String locationName){
Geocoder geocoder = new Geocoder(context, Locale.getDefault());
try {
List<Address> a = geocoder.getFromLocationName(locationName, 5);
for(int i=0;i<a.size();i++){
String city = a.get(0).getLocality();
String country = a.get(0).getCountryName();
String address = a.get(0).getAddressLine(0); // If any additional address line present than only, check with max available address lines by getMaxAddressLineIndex()
addressList.add(address+", "+city+", "+country);
}
} catch (IOException e) {
e.printStackTrace();
}
adapter.notifyDataSetChanged();
}
【问题讨论】:
-
在这里查看我的答案:stackoverflow.com/a/19860624/2252830
-
您能否修改您的示例以使用 ArrayList?
-
作为作业留给你
标签: android geolocation textview autocompletetextview textwatcher