在android中使用特定上下文菜单和listview特定项

在android中使用特定上下文菜单和listview特定项,android,listview,android-activity,overriding,contextmenu,Android,Listview,Android Activity,Overriding,Contextmenu,我有一个列表视图,并且我设置了一个上下文菜单,当长按一个列表视图项时显示。但是我想为不同的listview项目使用不同的菜单 代码: 以及onCreateContextMenu: @Override public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) { super.onCreateContextMenu(menu, v, menuInfo);

我有一个
列表视图
,并且我设置了一个上下文菜单,当长按一个列表视图项时显示。但是我想为不同的listview项目使用不同的菜单

代码:

以及onCreateContextMenu:

   @Override
   public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {  
       super.onCreateContextMenu(menu, v, menuInfo);  
       menu.setHeaderTitle("Context Menu");  
       menu.add(0, v.getId(), 0, "Buy");  
       menu.add(0, v.getId(), 0, "Remove");  
       menu.add(0, v.getId(), 0, "Wishlist");  
   }  
某些商品应该有
购买
删除
,但它们可能同时有

我如何做到这一点?

您是否尝试过以下方法:

@Override
public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {  
    super.onCreateContextMenu(menu, v, menuInfo);  
    menu.setHeaderTitle("Context Menu");

    if(shouldHaveBuyButton)
    {
        menu.add(0, v.getId(), 0, "Buy");  
    }
    if(shouldHaveRemoveButton)
    {
        menu.add(0, v.getId(), 0, "Remove");  
    } 
    menu.add(0, v.getId(), 0, "Wishlist");  
}  

shouldlhave按钮的逻辑取决于您的应用程序。如果你能发布更多关于它的代码,我们可以帮助你更多

不,那不是我想要的!我想知道从哪里可以获得特定列表项的
shoulldhavebuybutton
@fernandocarvalhosaThats有些东西如果不理解你的逻辑我们就不能给你哈。在应用程序中显示“购买”或“删除”按钮的条件是什么?
@Override
public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {  
    super.onCreateContextMenu(menu, v, menuInfo);  
    menu.setHeaderTitle("Context Menu");

    if(shouldHaveBuyButton)
    {
        menu.add(0, v.getId(), 0, "Buy");  
    }
    if(shouldHaveRemoveButton)
    {
        menu.add(0, v.getId(), 0, "Remove");  
    } 
    menu.add(0, v.getId(), 0, "Wishlist");  
}