Android 错误:隐藏列表视图子项
我有带有子项的ListView。当我按下ListView子项的Get ImageView时,我想删除可展开的ListView项。请在下面找到我使用的代码片段 我用来隐藏列表项的代码段Android 错误:隐藏列表视图子项,android,expandablelistview,Android,Expandablelistview,我有带有子项的ListView。当我按下ListView子项的Get ImageView时,我想删除可展开的ListView项。请在下面找到我使用的代码片段 我用来隐藏列表项的代码段 ExpandableListView remov = (ExpandableListView) v.findViewById(R.id.lvExp); remov.setOnTouchListener(new OnTouchListener() { @Override public bo
ExpandableListView remov = (ExpandableListView) v.findViewById(R.id.lvExp);
remov.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
removimg.setOnClickListener(new OnClickListener() {
@SuppressLint("NewApi")
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Toast.makeText(v.getContext(), "hello", Toast.LENGTH_SHORT).show();
addcadschildadoptor.remove(1);
addcadschildadoptor.notify();
}
});
return false;
}
});
return v;
}
我使用了可扩展列表采纳器代码段
@SuppressLint("NewApi")
private void prepareListData() {
listDataHeader = new ArrayList<String>();
listDataChild = new HashMap<String, List<String>>();
listDataHeader.add("");
addcadschildadoptor = new ArrayList<String>();
if(cardNameone!="")
{
addcadschildadoptor.add(cardNameone);
}
if(cardNametwo!="")
{
addcadschildadoptor.add(cardNametwo);
}
Toast.makeText(getActivity(), cardNametwo, Toast.LENGTH_LONG).show();
listDataChild.put(listDataHeader.get(0), addcadschildadoptor);
listAdapter = new ExpandableListAdapter(getActivity(), listDataHeader,listDataChild);
expListView.setAdapter(listAdapter);
}
您使用了错误的函数 公开最终无效通知() 在API级别1中添加会导致线程等待此对象的 监视器(通过调用wait()方法之一)被唤醒 向上的如果有多个线程正在等待,则在 VM的自由裁量权。所选线程不会立即运行。这个 调用notify()的线程必须首先释放对象的监视器。 此外,所选线程还必须与其他线程竞争 尝试在同一对象上同步的 您需要使用
addcadschildadoptor.notifyDataSetChanged();
此外,在视图中不应使用.setOnClickListener(),而应使用.setOnItemClickListener(),因为它提供了。您可以添加有关列表中项目位置的额外信息。查看日志以了解更多信息请发布所有日志猫错误删除似乎为空
addcadschildadoptor.notifyDataSetChanged();