我在我的應用程序中使用自定義列表視圖。在所有行的自定義列表視圖中,我放置了一個圖像按鈕。如果我點擊該圖像按鈕,我必須刪除自定義列表視圖中單擊的按鈕行。任何人都可以告訴我如何做到這一點?下面的代碼是不工作:自定義列表視圖在Android中刪除行
imgcross=(ImageView)v.findViewById(R.id.imgcross);
imgcross.setId(position);
if(v.getId()==R.id.imgcross)
{
Log.d("image id is",Integer.toString(imgcross.getId()));
myScheduleList.removeViewAt(imgcross.getId());
Toast.makeText(MyScheduleDay0RequestedMeeting.this, "Cross Button is Clicked", Toast.LENGTH_LONG).show();
}
if (v.getId()==R.id.imgcross)
{ //Integer index=(Integer)imgcross.getTag();
//Log.d("image id is",Integer.toString(index));
int index=imgcross.getId(); (imgcross.getId());
MyScheduleBean.listName.remove(index);
MyScheduleBean.dateValue.remove(index);
MyScheduleBean.dateValue.remove(index);
CAdapter = new CustomAdapter(this,MyScheduleBean.listName,MyScheduleBean.dateValue,MyScheduleBean.meeting,R.layout.myschedule_day0_requestedmeetingrow,to);
myScheduleList.setAdapter(CAdapter);
}
感謝
你可以告訴你怎麼在點擊事件底層適配器刪除數據,即使我試圖與此 – mohan 2011-04-26 09:21:07
如果(v.getId()== R.id.imgcross) \t \t { \t \t \t \t \t \t //整數指數=(整數)imgcross.getTag(); \t \t \t //Log.d("image id is「,Integer.toString(index)); \t \t \t int index = imgcross.getId(); \t \t \t \t \t \t(imgcross.getId()); \t \t MyScheduleBean.listName.remove(index); \t \t MyScheduleBean.dateValue.remove(index); \t \t MyScheduleBean.dateValue.remove(index); \t \t CAdapter = new CustomAdapter(this,MyScheduleBean.listName,MyScheduleBean.dateValue,MyScheduleBean.meeting,R.layout.myschedule_day0_requestedmeetingrow,to); \t \t \t myScheduleList.setAdapter(CAdapter); \t \t \t \t \t \t} – mohan 2011-04-26 09:22:33
@mohan:我不知道任何代碼一樣。要從ArrayAdapter中移除數據,請調用'ArrayAdapter'上的remove()。要從「CursorAdapter」中刪除數據,請修改底層的數據源(例如數據庫)和'requery()''Cursor'。 – CommonsWare 2011-04-26 11:08:53