ExpandableListView适配器中的自定义侦听器

时间:2015-11-29 07:43:46

标签: java android expandablelistview expandablelistadapter

我正在扩展BaseExpandableListAdapter适配器以填充ExpandableListView中的数据。我试图实现一个自定义侦听器,我想从我的父类通知这个适配器。

我已经实现了这样的监听:

public interface MyListener {
    public void onNext();
}

然后我在这样的父类中使用它:

ExpandableListView lv = new ExpandableListView(this.getContext());
MyAdapter adapter = new MyAdapter();
lv.setAdapter(adapter);
MyListener adapterListener = (MyListener) lv.getExpandableListAdapter();

adapterListener.onNext();

我正在扩展适配器中使用这个:

public class MyAdapter extends BaseExpandableListAdapter implements MyListener {


    @Override
    public void onNext() {

    }
}

但这并没有在我的自定义适配器类中捕获该事件。我做错了什么?

1 个答案:

答案 0 :(得分:0)

如果要通知适配器,请在构造函数的Adapter类中

MyListener adapterListener;
MyAdapter adapter = new MyAdapter(MyListener adapterListener)
{    
this.adapterListener = adapterListener    
}

并在适配器中调用要处理事件的方法 adapterListener.onNext();

然后在Activity或片段类中实现接口。