繁体   English   中英

一个活动中基于所选列表视图项的多个上下文菜单

[英]Multiple context menus in one activity based on selected list view item

如何基于所选的列表视图项以及基于所选上下文菜单项的上下文菜单中的独特if语句打开不同的上下文菜单?

下面的代码适用于按钮,但如何对列表视图项+我上面的要求进行处理?

@Override
public void onCreateContextMenu(ContextMenu menu, View v,ContextMenu.ContextMenuInfo menuInfo) {
        super.onCreateContextMenu(menu, v, menuInfo);
        if(v.getId() == R.id.first_button)
             inflate one menu
        else if(v.getId() == R.id.second_button)
             inflate another menu        
}

第一种方式: ContextMenu.ContextMenuInfo有关于应该为其显示上下文菜单的项目的额外信息。 该信息将根据v。的类别而有所不同,因此您可以执行此操作,然后复制并粘贴此信息

@Override
public void onCreateContextMenu(ContextMenu menu, View v,ContextMenu.ContextMenuInfo info) {
    super.onCreateContextMenu(menu, v, info);        
    int index = info.position; //The position in the adapter for which the context menu is being displayed. 
    View child = info.targetView;//The child view for which the context menu is being displayed. 
    // so for your case you have to use the child,because of your way about it
    if(child.getId() == R.id.first_button)
         inflate one menu
    else if(child.getId() == R.id.second_button)
         inflate another menu        
}

让我知道它是否有用

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM