2015-08-27 3 views
0

Я новичок в разработке Android. Мне нужно составить список с текстом и аудио-плеером. Значок имеет три состояния: «загрузка», «загрузка», «воспроизведение» и «пауза». Идея заключается в том, что при заполнении списка, установите значок загрузки, если трек не загружен и «воспроизводится», если трек загружен ». Если человек нажимает кнопку« загрузить », значок должен быть обновлен до« загрузки », чтобы начать загрузку, тогда, когда вы закончите, вы увидите значок «play». Если пользователь нажимает значок «play» для этого элемента, его необходимо обновить до «паузы».изменение элементов списка элементов списка

Я не могу изменить значок. Я попытался изменить их в onItemClickListener и сделать onClick в методе getView в адаптере, но при прокрутке значков, измененных на старый. И если вы выберете несколько элементов в списке, измените все значки, и мне нужно изменить только один, для воспроизведения дорожки.

Я не показывал код, потому что нет ничего, что могло бы быть соответствующим КТИД. - все неправильно

+2

Разместите код в любом случае, потому что это Я помогу объяснить вам, что вы сделали неправильно. Вы лучше всего поймете, что вы сделали неправильно, вместо того, чтобы дать правильный ответ. – AlexWalterbos

ответ

0

если у вас есть собственный адаптер, попробуйте использовать метод notifyDataSetChanged();

0

Это происходит из-за переработки видов. Если вы нажмете на элемент, и увидите несколько нажатых элементов. Используйте RecyclerView вместо listView, который будет обрабатывать самостоятельно, а класс ViewHolder позаботится о вашей проблеме. И не забудьте уведомить адаптер recyclerView всякий раз, когда вы делаете какие-либо изменения в источнике данных (то есть ArrayList) Заканчивать этот пример ... Надеюсь, что это помогает

http://hmkcode.com/android-simple-recyclerview-widget-example/

Смежные вопросы