Существует проблема. В моем приложении у меня есть динамически построенные пункты меню в меню ящика.Android: как назначить пользовательские идентификаторы динамическим пунктам меню?
// data comes from database
ArrayList<String> groupsName = mDbHelper.getAllGroupsName();
Menu m = navigationView.getMenu();
SubMenu userGroupsLessonsMenu = m.addSubMenu(R.string.your_groups);
for (String groupName : groupsName) {
userGroupsLessonsMenu.add(groupName);
};
ОК, он работает хорошо. Теперь я хочу реагировать на щелчок по этим элементам. Я хотел бы назначить свой собственный идентификатор пункты меню, чтобы в
public boolean onNavigationItemSelected(MenuItem item) {
int id = item.getItemId();
просто установить этот идентификатор намерение и начать новую деятельность.
Я не знаю, если это важно, но жестко закодированные пункты меню имеют конкретные идентификаторы, и мои пункты меню всегда есть 0:
06-25 17:50:20.857 23358-23358/my.package.name W/id: 2131493021
06-25 17:50:35.210 23358-23358/my.package.name W/id: 2131493022
06-25 17:50:38.372 23358-23358/my.package.name W/id: 2131493023
06-25 17:50:41.410 23358-23358/my.package.name W/id: 2131493024
06-25 17:50:47.576 23358-23358/my.package.name W/id: 0
06-25 17:50:51.903 23358-23358/my.package.name W/id: 0
06-25 17:50:57.241 23358-23358/my.package.name W/id: 0
06-25 17:51:00.788 23358-23358/my.package.name W/id: 0
Thx, похоже, он работает. –