setOnLongClickListener with registerForContextMenu

时间:2013-06-29 20:36:47

标签: java android

我想在显示上下文菜单之前做一些动作......

是否可以同时使用??

我试过了:

name.setOnLongClickListener(new View.OnLongClickListener()
{ 
    @Override
    public boolean onLongClick(View v)
    {
           //some code here before show the context menu

           registerForContextMenu(name);

           return true;
    }
});

但没有工作

感谢

编辑:这就是我所拥有的

for (final File dir : dirs)
{
    TableRow row = new TableRow(this);

    final Button name = new Button(this);

    name.setOnLongClickListener(new View.OnLongClickListener()
    { 
        @Override
        public boolean onLongClick(View v)
        {
               //DIR is a global variable. It saves clicked path
               DIR = dir.getAbsolutePath()+"/";

               //registerForContextMenu(name);

               return true;
        }
    });

    row.addView(name);

    fileView.addView(row);
}

如您所见,我想在保存点击项目的路径后显示上下文菜单

1 个答案:

答案 0 :(得分:0)

您可以将这些操作放在活动的onCreateContextMenu()中。为了在不同视图上做出不同的反应,可以将一个或多个标签(任意对象)与每个视图相关联,并在onCreateContextMenu()中回读。解决方法的方法是View.setTag()View.getTag()