Android EpandableListView适配器上的ActionListener集被忽略

Android EpandableListView适配器上的ActionListener集被忽略,android,navigation-drawer,Android,Navigation Drawer,我有一个ExpandableListView适配器,用作导航抽屉菜单 在我的主类中初始化抽屉时,我使用 ... mAdapter = new NavMenuExpamdableAdapter(this, items); mDrawerList = (ExpandableListView) findViewById(R.id.drawer); if (mDrawerList != null) mDrawerList.setAdapter(mAdapter);

我有一个
ExpandableListView
适配器,用作导航抽屉菜单

在我的主类中初始化抽屉时,我使用

   ...
   mAdapter = new NavMenuExpamdableAdapter(this, items);
   mDrawerList = (ExpandableListView) findViewById(R.id.drawer);
   if (mDrawerList != null)
        mDrawerList.setAdapter(mAdapter);
   mDrawerList.setOnItemClickListener(new DrawerItemClickListener());
由于
ExpandableListView
被用作导航抽屉,我无法从适配器类调用侦听器,因此我使用
mDrawerList.setOnItemClickListener(new-DrawerItemClickListener())
在应用程序的主类中添加侦听器

问题在于:基本上,这种方法

private class DrawerItemClickListener implements
            ExpandableListView.OnItemClickListener {

        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position,
                long id) {
            mDrawerList.setItemChecked(position, true);
            String text = "menu click... should be implemented";
            Toast.makeText(MainActivity.this, text, Toast.LENGTH_LONG).show();
            mDrawer.closeDrawer(mDrawerList);
            System.out.println("OK");

        }

    }
私有类DrawerItemClickListener实现
ExpandableListView.OnItemClickListener{
@凌驾
public void onItemClick(AdapterView父视图、视图、整型位置、,
长id){
mDrawerList.setItemChecked(位置,true);
String text=“应实现菜单单击…”;
Toast.makeText(MainActivity.this,text,Toast.LENGTH_LONG.show();
mDrawer.closeDrawer(mDrawerList);
System.out.println(“OK”);
}
}
似乎完全被忽视了

我怎样才能解决这个问题

EpandableListView适配器上的ActionListener集被忽略

如果您想注册
ExpensableListView
的点击事件,您应该使用以下方法:

  • 处理子单击事件的步骤
  • 要处理组单击事件
用于处理单击事件。OnItemClickListener在此处不工作(列表本身捕获项目单击以打开子元素,因此永远不会调用listener),抱歉