В приложении, над которым я работаю, я в настоящее время использую кнопку, чтобы открыть новое действие, в котором есть простое фильтруемое представление списка. Когда пользователь щелкает строку в списке, выбранное значение возвращается обратно в предыдущее действие, чтобы затем что-то с ним сделать. Это означает, что у меня есть два действия для выполнения одной функции.
Я искал способ элегантно объединить эти два вида и думаю, что расширяемый список — это то, что нужно, но я не уверен в одном: можно ли переопределить getChildView (настраиваемый расширяемый список), чтобы раздуть другое представление на основе значение в адаптере родительской группы?
Мой адаптер выбирает два значения из базы данных sqlite: целое число с именем «Тип» и строку с именем «Переместить». Я показываю только «Перемещение», но привязываю «Тип» к скрытому TextView. Если я реализую одно расширяемое представление списка, мне нужно будет каким-то образом передать «Тип» в раскрывающийся список, чтобы он мог отображать другое дочернее представление (позволяя пользователю вводить вес, время или повторения на основе значения типа «1», «2» или «3».
Возможно ли это с помощью пользовательского ELV, который переопределяет метод getchildview? Я вижу, что вы можете получить родительскую позицию и дочернюю позицию, но, кроме использования глобальной переменной при щелчке родителя, я не вижу ничего, что передается дочернему элементу, чтобы узнать значение, текст и т. д., которые были родитель?
Я также нашел хорошую реализацию здесь: https://github.com/tjerkw/Android-SlideExpandableListView а>
Но это кажется слишком сложным, чтобы попытаться переопределить это, поэтому я просто попробую стандартное представление расширяемого списка, если это возможно.
Спасибо!
Редактировать: вот плохой макет того, о чем я говорю. Первое падение будет иметь представление только с полем и кнопкой, второе представление может иметь поле и кнопку, но третье представление имеет два поля, одно для веса, одно для повторений, а затем кнопку.: