У меня есть макет строки списка с текстом и макет, который должен эмулировать кнопку.Проблема, с которой я сталкиваюсь, заключается в том, что я всегда буду получать последние данные в курсоре, то есть, если я щелкну макет в первой строке, мне нужно получить идентификатор GRP 1 и имя GRP ОДИН, но я получу идентификатор GRP 3, имя GRP ТРИнезависимо от того, какой макет я нажимаю в списке.Какой способ это исправить?Мой код:
В методе getView
ViewHolder holder;
if (convertView == null) {
holder = new ViewHolder();
holder.text2 = (TextView) vi.findViewById(R.id.text2);
holder.layout1 = (LinearLayout)vi.findViewById(R.id.info);
vi.setTag(holder);
} else {
holder = (ViewHolder) vi.getTag();
}
String grpCount = c.getString(c
.getColumnIndex(TestDbAdapter.KEY_GRP_COUNT));
holder.text2.setText("Channels: " + grpCount);
holder.layout1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
System.out.println(c.getString(c.getColumnIndex(TestDbAdapter.KEY_GRP_NAME)));
System.out.println(c.getString(c.getColumnIndex(TestDbAdapter.KEY_GRP_ID)));
}
});
return vi;