我遇到了一个简单情况下的问题(至少,看起来像这样)。我需要动态创建上下文菜单的子菜单,并为每个项目提供一个无线电框。我做了很多试验。当我打电话给menu.setGroupCheckable(0, true, true)
时,其中0默认为菜单本身,它按预期在每个菜单项上右侧显示单选按钮,但我需要这个菜单项作为子菜单。所以,我有以下代码:如何使用Android中的单选按钮创建子菜单?
SubMenu sub = menu.addSubMenu(R.string.name);
int count = 1000;
for(String e : someList)
{
MenuItem item = sub.add(1, count, count, e);
count++;
}
menu.setGroupCheckable(1, true, true);
在这种情况下,我没有看到没有选项框,也不复选框子菜单。然后,我写了下面的代码:
SubMenu sub = menu.addSubMenu(R.string.name);
int count = 1000;
for(String e : someList)
{
MenuItem item = sub.add(1, count, count, e);
item.setCheckable(true);
count++;
}
menu.setGroupCheckable(1, true, true);
这使得该子菜单在每一个项目一个复选框,并且复选框专门的工作,但我想选项框,因为它们看起来更直观的独家选择。
那么,如何才能做到这一点?
记住,上下文菜单都消失了,有利于操作栏上上下文动作模式。 – CommonsWare
仍适用于与操作栏中的ActionProvider一起使用的SubMenu。 – aap