Android DocumentFile.isDirectory() возвращает неожиданные результатыJAVA

Программисты JAVA общаются здесь
Anonymous
Android DocumentFile.isDirectory() возвращает неожиданные результаты

Сообщение Anonymous »

Я встраиваю файловый менеджер в свое приложение с помощью DocumentFile, но столкнулся со странной проблемой, когда метод IsDirectory возвращает неожиданные результаты.
Я' Я использую его внутри своего класса адаптера RecyclerView.

Код: Выделить всё

    @Override
public void onBindViewHolder(@NonNull AddFilesAdapter.ViewHolder holder, int position) {
DocumentFile file = files[position];
holder.filename.setText(file.getName());
String type = file.getType();
holder.setFileIndex(position);

if (file.isDirectory()) {
holder.icon.setImageResource(R.drawable.folder);
} else {
// set icon to something else
}

// some unrelated code
}
это моя реализация ViewHolder

Код: Выделить всё

    public static class ViewHolder extends RecyclerView.ViewHolder {
public ViewHolder(@NonNull View itemView) {
super(itemView);
icon = itemView.findViewById(R.id.IV_FileIcon);
filename = itemView.findViewById(R.id.TV_FileName);
}

public void setFileIndex(int fileIndex) {
this.fileIndex = fileIndex;
}

private int fileIndex;
public ImageView icon;
public TextView filename;
}
Вот результаты.
Обратите внимание на файлы payload.bin и .tmp
Изображение

Вот как они должны выглядеть на настоящий файловый менеджер.
Изображение

С XML-файлом View все в порядке. Я использую инструменты: src, поэтому он отображается только в студии Android Извините, если изображения были слишком большими, я не знаю, как изменить их размер при переполнении стека

Подробнее здесь: https://stackoverflow.com/questions/784 ... ed-results

Вернуться в «JAVA»