Android 在没有startActivity的情况下从适配器内部刷新ListView

Android 在没有startActivity的情况下从适配器内部刷新ListView,android,expandablelistview,Android,Expandablelistview,我在ExpandableListView的getChildView中有一个clickListener。当用户单击其中一个子项时,该行将从列表中删除。我需要刷新列表视图以反映此删除。因为我在数据适配器内部,所以我不认为我可以调用notifyDataSetChanged(),如果我是设置适配器的活动的内部人员的话 我知道我可以开始一个新的活动,但这会给活动堆栈(可能还有很多)添加一个几乎完全相同的副本。我正在寻找一种不用调用startActivity就能刷新此列表的方法。如果我手动折叠并展开组,列表

我在ExpandableListView的getChildView中有一个clickListener。当用户单击其中一个子项时,该行将从列表中删除。我需要刷新列表视图以反映此删除。因为我在数据适配器内部,所以我不认为我可以调用notifyDataSetChanged(),如果我是设置适配器的活动的内部人员的话

我知道我可以开始一个新的活动,但这会给活动堆栈(可能还有很多)添加一个几乎完全相同的副本。我正在寻找一种不用调用startActivity就能刷新此列表的方法。如果我手动折叠并展开组,列表将刷新,因此我尝试通过编程方式执行此操作,但也不起作用。(请注意,我正在刷新的组始终位于位置1)

有人知道如何在不启动新活动的情况下刷新此列表视图吗?谢谢

    public class ExpandListAdapter extends BaseExpandableListAdapter {

       public ExpandListAdapter(Context context, ArrayList<ExpandListGroup> groups, ExpandableListView expandableList) {
            this.context = context;
            this.groups = groups;
            this.expandableList = expandableList;        
        }

        @Override
        public View getChildView(int groupPosition, int childPosition, boolean isLastChild,  View view, final ViewGroup parent) {

            view.setOnClickListener(new View.OnClickListener() {

            @Override
                public void onClick(View v) {
                    //call method to remove this item from the database
                    //remove item from ArrayList
                    //refresh the view -- this is where I am stuck
                         //tried expandableList.collapseGroup(1); but null pointer resulted
                }
            }
        }
    }
公共类ExpandListAdapter扩展了BaseExpandableListAdapter{
公共ExpandListAdapter(上下文上下文、ArrayList组、ExpandableListView expandableList){
this.context=上下文;
这个组=组;
this.expandableList=expandableList;
}
@凌驾
公共视图getChildView(int-groupPosition、int-childPosition、布尔isLastChild、视图视图、最终视图组父视图){
view.setOnClickListener(新的view.OnClickListener(){
@凌驾
公共void onClick(视图v){
//调用方法从数据库中删除此项
//从ArrayList中删除项
//刷新视图--这就是我被卡住的地方
//已尝试expandableList.collapseGroup(1);但结果为空指针
}
}
}
}

您可以使用

显然我可以。不知何故,我说服自己,只有在我设置适配器的活动中才能使用此方法。谢谢!