Изменение значения строки при нажатии другой строки в списке

Работаю с мультимедийным плеером. Где список песен отображается в listView. так, например, если воспроизводится первая песня, первая строка должна быть помечена как играющая, а другая строка должна быть снята. Затем, если пользователь нажимает на третью, вторую или любую другую строку, текущая строка должна быть снята. И нажатая строка должна быть отмечена. Здесь отмеченные и немаркированные означают Play и Pause. Я играю и делаю паузу, чтобы играть с одним и тем же рядом. Но как изменить элемент предыдущей строки? Могу ли я хранить View более раннего ряда в View? или что-нибудь еще?

Вот код setOnClickListener

imageView.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {

                ImageView imagEar = (ImageView) viewEar.findViewById(R.id.thumb);

                imagEar.setImageResource(R.drawable.pause);
                imagEar.setTag("pause");

                viewEar = v;

                if (imageView.getTag().toString().equals("play")){
                    imageView.setImageResource(R.drawable.pause);
                    imageView.setTag("pause");
                }else if (imageView.getTag().toString().equals("pause")){
                    imageView.setImageResource(R.drawable.play);
                    imageView.setTag("play");
                }
            }
        });

Я уже заявлял View viewEar;

Может быть, эта почта поможет

Bö macht Blau 10.08.2018 19:32
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
1
43
1

Ответы 1

Привет, проверьте приведенный ниже URL-адрес, чтобы получить более полное представление о ваших требованиях. В основном вам нужно взять одну переменную, которая говорит selectedPosition, при нажатии на элемент вы изменяете значение selectedPostion, и, используя это, вы можете применять изменения в этом представлении и путем вызова notifySetChanged (), которые обновляют список.

http://www.devexchanges.info/2015/11/listview-with-checkbox-single-row.html

иначе вы можете создать метод в адаптере, который занимает выбранную позицию или что-то в этом роде. с помощью этого вы можете изменить значение в адаптере, а затем уведомить. это будет работать хорошо.

praveen2034 10.08.2018 19:35

Другие вопросы по теме