2016-07-03 2 views
0

Какой один из этих двух подходов лучше в отношении производительности и охранение:ListView onItemClickListener или Внутренний просмотр кликов?

  1. Реализация listView.setOnItemClickListener()
  2. Добавление click listener к convertView или объекта вида в getView() метода.

Также добавляет ли прослушиватель кликов в методе getView адаптера нарушает принцип единой ответственности?

Заранее спасибо :-)

+0

не по методу 'getView', а в классе' ViewHolder' - да. –

+0

@SergeyShustikov, я до сих пор неясно .... используя ViewHolders, мы можем прослушивать щелчки на элементах строки, но применение функции прослушивания в главном родителе макета (может быть линейным или относительным) в ViewHolder - лучший подход или реализация listView .setOnItemClickListener() лучше? Также вы можете предоставить более подробную информацию о своем ответе как «Да». –

ответ

0

Это зависит от реализации. С простым списком рекомендуется использовать первый подход. Если у вас есть пользовательский адаптер с настраиваемыми видами, я рекомендую второй подход.

Respeonsibilty не имеет отношения к добавлению прослушивателя кликов, но к тому, что делает прослушиватель кликов. Если он выполняет некоторую бизнес-логику (с симптомом изменения) внутри адаптера, он нарушает SRP.