我想知道如何在开关中引用我创建的菜单项? 预先谢谢你。
我的菜单项:
@Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenu.ContextMenuInfo menuInfo) {
menu.setHeaderTitle("Vælg en handling");
//I just want one of the menu items under referenced.
menu.add(0,0,0, "Slet denne regning");
menu.add(0,1,0, "Omdøb denne regning");
}
还有我的Switch保护套:
@Override
public boolean onContextItemSelected(MenuItem item) {
adapter.getSelectedItem(item);
switch (item.getItemId()){
case //This is where i want one of my menu items referenced :
finish();
}
return super.onContextItemSelected(item);
}
还应注意,我的开关在mainActivity中,而我的菜单项在另一个类(一个Recycler适配器)中。
答案 0 :(得分:1)
在menu.xml文件中,您为商品定义了一个ID,例如@ + id / menu_item
<item
android:id="@+id/menu_item"
android:icon="@drawable/item"
android:title="Item"
android:visible="true"
app:showAsAction="ifRoom" />
然后在您的开关中添加 R.id.menu_item :
//...
switch(item.getItemId()) {
case R.id.menu_item:
doAction();
break;
//...
答案 1 :(得分:0)
声明您的活动:
public class MainActivity extends AppCompatActivity {
MenuItem mi;
add
方法返回菜单项:
mi = menu.add(0,0,0, "Slet denne regning");
和onContextItemSelected
中的
if (item == mi) {
//your code here
}