У меня есть селектор файлов (который работает по мере необходимости), но я хотел бы добавить миниатюры в список, если это необходимо. Он работает достаточно хорошо для первых нескольких изображений, но затем случайных файлов (и папок), которые не являются изображениями, и не должны иметь миниатюры для загрузки случайных изображений, которые уже загружены. Весь список файлов в конечном итоге принимает изображение после повторной прокрутки.Отображение списка в Android-формате показывается случайным образом
Это известная проблема со списками? Есть ли стандартный способ показа эскизов? Мой код просто сломан?
Ниже приведен код, который присваивает имена файлов и миниатюры каждому элементу списка - класс расширяет ArrayAdapter
.
public View getView(int position, View convertView, ViewGroup parent)
{
View v = convertView;
if (v == null)
{
LayoutInflater vi = (LayoutInflater) c
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(id, null);
}
final Option o = items.get(position);
if (o != null)
{
TextView t1 = (TextView) v.findViewById(R.id.TextView01);
TextView t2 = (TextView) v.findViewById(R.id.TextView02);
ImageView img1 = (ImageView) v.findViewById(R.id.imageView1);
try
{
if(o.getData()!="Folder" && (o.getPath().contains(".jpg") || o.getPath().contains(".gif") || o.getPath().contains(".png")))
img1.setImageBitmap(getPreview(o.getPath()));
}
catch (Exception e)
{
Log.w("Image failed in File Viewer", e);
}
if (t1 != null)
t1.setText(o.getName());
if (t2 != null)
t2.setText(o.getData());
}
return v;
}