我的每个列表视图项目都有自己的linearlayout组件。列表视图位于活动中,并且onItemClick本身。
在我的自定义适配器文件中,我对该线性布局进行了onclick,
private ArrayList<Book> bookArray; // this is the data source
.........
LinearLayout imgLayout = (LinearLayout) rowView.findViewById(R.id.imageLayout);
imgLayout.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) { // fire user Like
//*** how can I get which item is selected here?
但是,如何获得单击了线性布局的项目索引?
问候
锤子
最佳答案
使用setTag()和getTag()记住正数,并在单击LinearLayout时使用它。
在getView中
LinearLayout imgLayout = (LinearLayout) rowView.findViewById(R.id.imageLayout);
imgLayout .setTag(position);
并进入LinearLayout的onclick中
imgLayout.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
int position = (Integer)v.getTag();
//....
}
}