Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Не надо так делать. Вы просто убиваете все преимущества RecyclerView по работе с большими списками – у Вас просчитываются и биндятся все элементы дерева. Т.е. если у вас список из 10 элементов верхнего уровня, и у каждого по 100 детей, то в закрытом состоянии у вас список будет обрабатывать 1000 элементов.
Позанудствую
//проверить родительский элемент или нет
Без взгляда на код, непонятно, что это за проверка
Слово 'родительский' в таком контексте не используется
Лучше //проверить, что элемент содержит дочерние элементы
И соответственно переименовать HasChildren например
Деревовидный список RecyclerView (без сторонних библиотек и дочерних массивов)