处理菜单的longclicklistener

时间:2011-05-08 14:38:05

标签: android listview menu onlongclicklistener

我需要长时间点击行处理列表视图中的选定行,但由于使用菜单我无法覆盖onclicklistener。我想这样做:

listView.setOnLongClickListener(new OnLongClickListener() {
    @Override
    public boolean onLongClick(View v) {
        taskPosition = listView.getSelectedItemPosition();
        return true;
    }
});

但它不起作用。任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:2)

  

我得到了listView.getSelectedItemPosition()的值;等于-1

当然。通常不选择行。仅当用户使用指点设备(D-pad,轨迹球等)时才会选择行。

  

我需要在listview上处理选择longclick并在onContextItemSelected中使用它来执行操作

不,你没有。您可以使用上下文菜单使用带有窗口小部件的长按侦听器。你不要同时使用它们。

如果您要确定从onContextItemSelected()here is a sample project长按哪个行,将为您演示,如果您的适配器是ArrayAdapter。如果您使用的是CursorAdapterhere is a different sample project,则会为您演示此内容。