Как получить itemid, когда мы динамически добавляем меню в navigationdrawer
Я добавляю меню для навигационной панели динамически, как это:
for(int i = 0;i<UtilInsta.MenuList.size();i++)
{
switch (UtilInsta.MenuList.get(i).BANNER_CODE)
{
case "AF" :
menu.add(UtilInsta.MenuList.get(i).BANNER_DESC).setIcon(R.drawable.application_form);
break;
case "PD" :
menu.add(UtilInsta.MenuList.get(i).BANNER_DESC).setIcon(R.drawable.pending_doc);
break;
case "VD" :
menu.add(UtilInsta.MenuList.get(i).BANNER_DESC).setIcon(R.drawable.view_doc_nav);
break;
case "PF" :
menu.add(UtilInsta.MenuList.get(i).BANNER_DESC).setIcon(R.drawable.pay_free);
break;
case "RD" :
menu.add(UtilInsta.MenuList.get(i).BANNER_DESC).setIcon(R.drawable.refree_detail);
break;
case "IC" :
menu.add(UtilInsta.MenuList.get(i).BANNER_DESC).setIcon(R.drawable.information);
break;
case "CP" :
menu.add(UtilInsta.MenuList.get(i).BANNER_DESC).setIcon(R.drawable.change_pass);
break;
}
}
}
и когда элемент выбран и когда вызывается onNavigationItemSelected, item.getitemid() дает только 0 в качестве возврата,
так как я узнаю, какой элемент выбран?
1 ответ
Вы реализуете что-то вроде:
private class DrawerItemClickListener implements ListView.OnItemClickListener {
@Override
public void onItemClick(AdapterView parent, View view, int position, long id) {
selectItem(position);
}
}
Это должно дать вам всю необходимую информацию, нет?