关于Android ListView position错位问题
天晓明月 2016-05-10 07:08:34 在Adapter中写监听的时候,往往容易出现position错位的问题。
当你点击一个item的时候,item所点击到的position值是与方法中当前的position值是不同的。position记录的是getView方法执行时的条目位置,而不是点击的条目位置。要想获取点击时的条目位置,需要将点击时的position保存为另一个变量,然后再使用:
viewHolder.ivImg.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//在这里保存点击的position,
// 如果需要在监听之外对item做操作,可以变为全局变量
int pos = position;
}
});