Если я использую простой адаптер для подачи списка, а список содержит текстовое представление и кнопку, то как мне выполнить операцию с определенной позицией? - PullRequest
0 голосов
/ 20 декабря 2018

Я хочу найти позицию представления, которое является частью пользовательского XML-файла представления списка.Как можно найти положение взглядов.Могу ли я автоматически выполнить onItemClick ?

Ответы [ 3 ]

0 голосов
/ 20 декабря 2018

Проверьте ниже код, надеюсь, это поможет вам:

listView.onItemClickListener = AdapterView.OnItemClickListener { adapterView, view, position, id ->
        Toast.makeText(this, "Click on: " + position, Toast.LENGTH_SHORT).show()
    }

для более подробной информации следуйте эта ссылка

0 голосов
/ 20 декабря 2018

@ Suvidha Malaviya

Создайте собственный настраиваемый адаптер для просмотра списка с одним интерфейсом, в котором есть один метод с тремя параметрами, а именно View, Position, Model класса вашего списка, который вы передаете в свой адаптер.

После создания этого интерфейса инициализируйте этот интерфейс в своем адаптере и установите этот метод интерфейса в событии щелчка просмотра.

Теперь установите этот интерфейс в своей деятельности или фрагменте, где вы используете свой настраиваемый адаптер иполучить желаемое значение ...

Например, см. ссылку ниже, в которой объясняется , как использовать настраиваемый прослушиватель в адаптере представления списка .Здесь вам нужно просто создать свой собственный приемник щелчков, в котором вы должны передать три параметра, которые я упомянул выше.

Попробуйте.Я надеюсь, что вы решите свою проблему ...

0 голосов
/ 20 декабря 2018

Я сталкиваюсь с этой трудностью.В моем случае, когда я нажимаю textview , который является частью пользовательского XML-файла представления списка, позиция становится правильной, но когда я нажимаю на кнопку, которая является частью пользовательского XML-файла представления списка, онавсегда дает первую позицию.

После того, как я решил решить выполнить автоматический onItemClick и сохранить все значения позиции щелчка в другой объявленной переменной, которая находится ниже. Смотрите изображение, которое я использовал kotlin язык вместо Java.Я сохранил все значения карты в другой переменной, которая объявлена ​​выше с общедоступным спецификатором.

[Теперь, когда я выполняю операцию по нажатию кнопки, я использую

lvShayari.performItemClick(v, lvShayari.getPositionForView (v), lvShayari.selectedItemId)

этот оператор, в котором lvShayari является списком, а метод executeItemClick () выполняет onItemClick автоматически, когда мы нажимаем на кнопку.Здесь v - это вид, lvShayari.getPositionForView (v) метод дает позицию из v, в моем случае это кнопка.] 2

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...