Ошибка при использовании notifyDataSetChanged в адаптере массива Android
11-06 19: 52: 25.958: E / AndroidRuntime (29609): java.lang.IllegalStateException: содержимое адаптера изменилось, но ListView не получил уведомление. Убедитесь, что содержимое вашего адаптера не изменено из фонового потока, а только из потока пользовательского интерфейса. [в ListView (-1, класс android.widget.ListPopupWindow $ DropDownListView) с адаптером (класс com.example.parkfoxxlight_android.PlacesAutoCompleteAdapter)]
Полный журнал:http://pastebin.com/Hx7k28Rm
Полный код адаптера:http://pastebin.com/TfH1bXE3 Я использую пример изhttps://developers.google.com/places/training/autocomplete-android и он имеет код по умолчанию, так что, похоже, есть ошибка в коде Google?
Приложение вылетает только иногда с сообщением об ошибке выше.
protected void publishResults(CharSequence constraint,
FilterResults results) {
if (results != null && results.count > 0) {
notifyDataSetChanged();
} else {
notifyDataSetInvalidated();
}
}
Деятельностьhttp://pastebin.com/FYzYtvXY:
public class CityActivity extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.city);
AutoCompleteTextView autoCompView = (AutoCompleteTextView) findViewById(R.id.autocomplete_city);
PlacesAutoCompleteAdapter ad = new PlacesAutoCompleteAdapter(this);
ProgressBar b = (ProgressBar)findViewById(R.id.progressBar1);
ad.setLoadingIndicator(b);
autoCompView.setAdapter(ad);
}
}
Любые идеи, как это исправить? Я на андроиде 4.3.