169 похожих чатов

Как использовать групированный список из Hashmap в адаптере?

12 ответов

12 просмотров

Почитай про recyclerciew и multiple view types

Пользователь-6107d Автор вопроса

тоесть в любом случае использовать List?

Ты можешь использовать карту, но тебе тогда нужен linkedhashmap. Тогда ты сможешь ключ использовать в качестве типа вьюхи

Пользователь-6107d Автор вопроса

а откуда мне знать об ключах? когда я буду адаптер использовать, какой то плохой подход. Мапу юзать в адаптере

Дык а ты пары элементов тяни. Linkedhashmap позволит получать пары в порядке закладывания. Но лично мне такой вариант нравиться меньше всего. Я бы sealed class делал или обёртку и енамчик типов контента

Пользователь-6107d Автор вопроса

Вот я тоже думаю обертку сделать и хранить там 3 класса Header?, Element?, Footer? и чекать какой из них не null

Нее) Смотри, одно поле типа ContentType, а ты чекаешь его значения (это енам). Или сделай sealed класс - тогда нет нужды в обёртке отдельной и енаме, у тебя носитель данных будет и про тип контента говорить

Пользователь-6107d Автор вопроса

Ну этот енам я в адаптере хранить буду. А я говорю о том чтобы разные типы как пробросить в адаптер. Список разных типов классов. Надо же их обернуть во что - то)

Если делать запечатанный класс и его наследников: ты в адаптер принимаешь список общего типа, а в том списке конкретных типов наследники (HeaderContent, ItemContent, FooterContent и прочее). Далее ты чекаешь тип элемента в getItemViewType и определяет так тип. Похожее делаешь при биндинге данных - у тебя есть тип (значит знаешь, к чему кастануть), кастуешь общую ссылку к конкретной и достаешь нужные данные

Пользователь-6107d Автор вопроса

Дак я обернуть тоже самое могу в обычный класс)

Суть понял?)

Но так-то я не агитирую, тут дело вкуса

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта