Я хотел знать, есть ли способ заставить BindView работать только один раз за элемент?Пользовательский адаптер SimpleCursor BindView вызывает
Элементы, которые мы прокручиваем от экрана, уничтожаемого? и когда они вернутся, мы снова должны запустить bindview?
Причина в том, что я получил свой адаптер для загрузки изображения и установки его на предмет.
при прокрутке изображения загружается снова, даже если я не покинул приложение.
BindView вызывается каждый раз, когда пункт «возвращает» в дисплей, так что даже Тхо я уже скачал его, он будет преформ в asyntask раз (asyntask называется адаптер)
Я даже пытался экономить BLOB на моя база данных после каждой загрузки, чтобы знать, когда называть asyntast и когда просто сделать растровое изображение из массива
if(photoBArray != null){
Bitmap bitmap = BitmapFactory.decodeByteArray(photoBArray, 0, photoBArray.length);
holder.icon.setImageBitmap(bitmap);
}else{
holder.icon.setImageResource(R.drawable.loader);
String urlString = "https://maps.googleapis.com/maps/api/place/photo?maxwidth=100&photoreference="
+ c.getString(c.getColumnIndex(PlacesDBHelper.PHOTO_REFERENCE_COL))+"&key=API_KEY";
Log.e("Photo REFERENCE", c.getString(c.getColumnIndex(PlacesDBHelper.PHOTO_REFERENCE_COL)));
try {
URL url = new URL(urlString); // create new URL object from url string
new ImageDownloader(holder.icon, this).execute(url);
}catch (Exception e){
Log.e("Error in url", e.getMessage());
}
}
Я использую chrisbanes pulltorefresh ListView, а также, я не уверен если то АНОМАЛЬНЫЙ для задачи
Bo Вопрос ttom line: как сделать элемент устойчивым и готовым, когда он вернется на экран и не будет создан снова? (даже если я не dowloand изображение и только установка растрового изображения, действие setimagebitmap может быть видно на медленном телефоне)
Заранее благодарен!
Прежде всего, спасибо большое! Если это так, у меня возникает другой вопрос. Я использую адаптер для загрузки изображения, и, как вы говорите, как только я закончу его загрузку, мне нужно сохранить его в моей БД. Моя проблема в том, что я не знаю, где я должен добавить данные, потому что у меня нет идентификатора или POS загруженного исходного файла. Я использовал этот прием для предварительной асинхронной загрузки: http://javatechig.com/android/asynchronous-image-loader-in-android-listview У вас есть предложения? –