getExpandableListView().setOnGroupClickListener( new OnGroupClickListener() { @Override public boolean onGroupClick(ExpandableListView parent, View v, int groupPosition, long id) { if (groupPosition == 1) { Toast.makeText(getApplicationContext(), "TEST", Toast.LENGTH_SHORT).show(); } else if (groupPosition != lastExpandedGroupPosition) { getExpandableListView().collapseGroup( lastExpandedGroupPosition); } else getExpandableListView().expandGroup(groupPosition); lastExpandedGroupPosition = groupPosition; return true; } }); mExpandableListView.setOnGroupClickListener(new ExpandableListView.OnGroupClickListener() { public boolean onGroupClick(ExpandableListView parent, View v, int groupPosition, long id) { if(groupPosition == 2) { Toast.makeText(mContext, "Group 2 clicked", Toast.LENGTH_LONG).show(); return true; } else return false; } }); private int previousGroupPosition = -1; private boolean isDoubleTap = false; expLv.setOnGroupClickListener(new OnGroupClickListener() { @Override public boolean onGroupClick(ExpandableListView parent, View v, int groupPosition, long id) { if(previousGroupPosition != -1) expLvTodoCategories.collapseGroup(previousGroupPosition); if(previousGroupPosition != groupPosition || isDoubleTap) { isDoubleTap = false; previousGroupPosition = groupPosition; if(groupPosition == 1) { //Start Activity } else { expLv.expandGroup(groupPosition); } } else isDoubleTap = true; return true; } });