Привет! Чтобы лучше помочь с вашей проблемой, мне нужно немного больше информации о том, как вы реализовали функции `openFolder` и `closeFolder`, а также о том, что именно не работает или вызывает ошибки. Вот несколько советов, которые могут помочь вам устранить проблему:
1. **Проверьте структуру данных**: Убедитесь, что ваша структура данных для представления файлового дерева корректно поддерживает состояние открытия и закрытия папок. Например, если у вас есть класс `Folder`, вы можете добавить поле `isOpen`, которое будет хранить состояние.
2. **Обновление адаптера**: После изменения состояния папки (открытие или закрытие) не забудьте уведомить адаптер, чтобы он обновил отображение. Используйте `notifyDataSetChanged()`, `notifyItemChanged(position)` или другие методы для этого.
3. **Проверка привязки данных**: Убедитесь, что в методе `onBindViewHolder` вы правильно обновляете представление в зависимости от состояния `isOpen`. Вам может потребоваться показать или скрыть дочерние элементы в зависимости от этого состояния.
4. **Логирование**: Добавьте логи в ваши функции `openFolder` и `closeFolder`, чтобы убедиться, что они вызываются в нужные моменты и что параметры передаются корректно.
5. **Ошибки в логах**: Если ваше приложение выдает ошибки, внимательно их изучите. Часто они могут указать на проблему, такую как попытка вызвать метод на `null` или доступ к элементу по неправильному индексу.
6. **Пример кода**: Если вы можете, предоставьте часть вашего кода, особенно те части, которые отвечают за открытие и закрытие папок. Это может помочь более точно определить проблему.
Если вы предоставите больше информации о том, что именно не работает или какие ошибки возникают, я смогу предложить более конкретные решения.