我剛開始發展到android,請大家幫忙。點擊圖片查看複選框?
我不知道我缺少什麼.. 複選框檢查作品,我也想通過點擊圖像檢查。
這部分工作得很好:
holder.checkbox.setId(position);
holder.imageview.setId(position);
holder.checkbox.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
// TODO Auto-generated method stub
CheckBox cb = (CheckBox) v;
//ImageView cb1 = (ImageView) v;
int id = cb.getId();
if (thumbnailsselection[id])
{
cb.setChecked(false);
thumbnailsselection[id] = false;
} else
{
cb.setChecked(true);
thumbnailsselection[id] = true;
}
// ImageView im = (ImageView) v;
}
});
///////////////////////////////////////////////////////
現在的問題是:
holder.imageview.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
CheckBox cb = (CheckBox) v;
int id = v.getId();
if (thumbnailsselection[id])
{
cb.setChecked(false);
thumbnailsselection[id] = false;
} else
{
cb.setChecked(true);
thumbnailsselection[id] = true;
}
}});
的logcat:
java.lang.ClassCastException: android.support.v7.widget.AppCompatImageView cannot be cast to android.widget.CheckBox
感謝。
首先,ID是唯一的,不給e相同的ID到您的imageview和複選框 –
顯示您的完整代碼活動 –
我認爲這是因爲您正在從onClick(視圖v)投射「v」作爲複選框,但它是ImageView –