Допусти есть listView состоящий из textView's. Нужно к каждому textView прицепить какие-то данные, но чтобы они не были видны пользователю. Ps идея чтобы дописать нужные данные в textView и скрыть эту часть не подходит.
2 Answers
у класса View (и всех его наследников соответственно) есть методы setTag() , getTag() которые позволяют привязать к View любой объект, а затем извлечь его.
- 36,765
Как уже сказали, к любой вьюшке, в том числе к текствью можно прицепить какой-то свой тег, используя геттеры/сеттеры getTag()/setTag(). Но это достаточно плохой способ, ведь строки уже где-то в приложении есть, зачем их размазывать куда-то еще? Чтобы этого не делать, можно назначить простой идентификатор...
Стоп! У нас же список! Значит, мы откуда-то подгружаем его? У списков есть как идентификаторы, так и возможность получить элемент списка (и это совсем не обязятельно будет вьюха!), так что лучше всего правильно организовать адаптер списка, а при клике (или другому событию) по нужному элементу брать его позицию или идентификатор и использовать их для получения данных. Это наиболее правильный способ. И никакие отдельные теги не нужны!
- 2,144
Viewдоп. информацию. Так же я использовал прикрепление к тегам в такой схеме, это самое простое решение дляRecyclerViewна активити, если данные требуется передать в нее. – pavlofff Sep 09 '17 at 05:03RecyclerView, который на порядок оптимизированееListViewпо использованию памяти – pavlofff Sep 09 '17 at 06:21