ExpandableListView.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {
@Overridepublic void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {
ExpandableListView.ExpandableListContextMenuInfo info = (ExpandableListView. ExpandableListContextMenuInfo) menuInfo;
//得到父视图和子视图的int编号
int type = ExpandableListView.getPackedPositionType(info.packedPosition);
//得到子视图的下标
int childPos = ExpandableListView.getPackedPositionChild(info.packedPosition);
//得到父视图的下标
int groupPos = ExpandableListView.getPackedPositionGroup(info.packedPosition);
dataList = queryTroubleExpandablechild(listall.get(groupPos).get("expanda_ID"). toString());
//判断是不是长按的子视图,是为true
if(type == ExpandableListView.PACKED_POSITION_TYPE_CHILD){
//如果再父视图长按的话,有子视图的下标就会报错,
//子视图可以任意用父视图的下标,但父视图不能随便用子视图的下标
String meunTitle= ((String[])dataList.get(childPos))[0];//标题
_id =((String[]) dataList.get(childPos))[3];
selectIndex = childPos;
menu.setHeaderTitle(meunTitle);
menu.add(0,1,0,"复查");
menu.add(0,2,0,"销案");
}
//判断是不是长按的父视图,是为true
if (type == ExpandableListView.PACKED_POSITION_TYPE_GROUP) {
int groupPos = ExpandableListView.getPackedPositionGroup(info. packedPosition);
Toast.makeText(this, title + ": Group " + groupPos + " clicked", Toast. LENGTH_SHORT).show();
return true;
}
});
}
public boolean onContextItemSelected(MenuItem item) {
//对话框案件的操作
switch (item.getItemId()) {
case 1:
onItemclickcontent(1);//复查
break;
case 2:
onItemclickcontent(2);//销案
break;
default:
break;
}
return super.onContextItemSelected(item);
return false;
}