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
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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