我正在使用包含图像视图和文本视图的列表视图。单击其中一个图像视图时,我应该获得特定列表项的位置。
我知道我可以在列表视图上设置clicklistener时获得listitem位置,但图像中有一个视图持有者项,因此它没有得到完美的值,每次只有-1。
不使用getview
所以我尝试了rightimg.setOnClickListener
,但是不可能从中获得这个位置。
我该如何解决这个问题?
答案 0 :(得分:1)
尝试实现它:
public View getView(int position, View convertView, ViewGroup viewGroup)
{
View row = convertView;
ViewHolder holder;
if(row == null)
{
row = LayoutInflater.from(mContext).inflate(R.layout.row_branch, null);
holder=new ViewHolder();
/**.....Your other implementaion***/
holder.rightimg = (ImageView)row.findViewById(R.id.image);
row.setTag(holder);
}
else
holder = (ViewHolder)row.getTag();
final int pos = position;
holder.rightimg.setOnClickListener(new OnClickListener()
{
public void onClick(View view)
{
//Here you can implement your logic
//Here the correct pos is available
}
});
return row;
}