我有一個listview與左側的imageview。我想要做的是;如果我按imageView選擇當前行,如果我再次按下,取消選擇該行。使用我當前的代碼,當我點擊imageView但未選中當前行時,我可以選擇帶有performLongClick()的行。看起來是隨機的。如何在列表視圖中選擇一行只按下一個ImageView
public View getView(int position, View convertView, ViewGroup parent) {
final HmViewHolder holder;
row = convertView;
if (row == null) {
row = inflater.inflate(R.layout.list_item, parent, false);
holder = new HmViewHolder();
holder.title = (TextView) row.findViewById(R.id.title);
holder.contact = (ImageView) row.findViewById(R.id.imageview);
row.setTag(holder);
} else {
holder = (HmViewHolder) row.getTag();
}
holder.contact.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (multiMode) {
row.getTag();
row.setSelected(!row.isSelected());
holder.contact.setImageResource(R.drawable.ic_check_circle_black);
} else {
row.performLongClick();
holder.contact.setImageResource(R.drawable.ic_contact);
}
}
});
return row;
}
在此先感謝
是否有任何理由,你也不會轉回去要使用的onItemClickListener? https://developer.android.com/reference/android/widget/AdapterView.OnItemClickListener.html –
@ D.O。你可以使用POJO類實現來解決這個問題。 – Nisarg