我的应用中有一个问题,我附上了Image。在此图像右侧,我在ListView中添加了文件夹名称和文件名。如果我在数据库中创建了文件夹名称,同时我在数据库中发送值1,如果我在数据库中创建文件名同时在数据库中发送值0当我单击文件夹名称时我检查了for循环条件如果类别1文件夹名称不能同时删除如果类别0我在arraylist中添加了文件名,那么我调用.remove()方法所有列表值都应该被删除但是它们不会被删除。我见过调试他们工作正常但没有删除。我在下面附上编码。
@Override
protected void onListItemClick(ListView list, View v, int position, long id) {
super.onListItemClick(list, v, position, id);
try {
int length = listViewAllData.size();
Log.d("Before RemoveLength", "" + length);
ArrayList<Integer> removeList=null;
removeList=new ArrayList<Integer>();
for (int i = position + 1; i < length; i++){
Log.d("SubjectID", ""+ listViewAllData.get(i).getIsCategory());
if (listViewAllData.get(i).getIsCategory() == 0){
Log.d("Remove SubjectId", "" + i);
removeList.add(i);
} else {enter code here
break;
}
}
Log.d("RemoveLength",removeList.size()+" ");
for(int n=0;n<removeList.size();n++){
Log.d("Removing Index",listViewAllData.get(n).getCatorSubName()+ " ");
listViewAllData.remove(removeList.get(n));
}`enter code here`
Log.d("After RemoveLength",listViewAllData.size()+" ");
customfolderlist.updateResults(listViewAllData);
}catch (Exception e){
e.printStackTrace();
}
public void updateResults(ArrayList<FolderCatSubProperties> results) {
listCategory = results;
notifyDataSetChanged();
}