我需要在long单击行的时候处理listview中选定的行,但是因为我使用的是菜单,所以不能覆盖onclicklistener。我正在尝试这样做:
listView.setOnLongClickListener(new OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
taskPosition = listView.getSelectedItemPosition();
return true;
}
});但它不起作用。有谁可以帮我?
发布于 2011-05-08 23:42:29
我得到了listView.getSelectedItemPosition()的值;等于-1
当然了。行通常不会被选中。仅当用户使用定点设备(D键盘、跟踪球等)时,才会选择行。
我需要处理listview上的选择longclick并在onContextItemSelected中使用它来执行操作
不,你不需要。你要么使用上下文菜单,要么使用带有小部件的长点击监听器。您不能同时使用两种方法。
如果您正在尝试确定从onContextItemSelected()中长时间单击了哪一行,here is a sample project将为您演示这一点(如果您的适配器是ArrayAdapter )。如果您使用的是CursorAdapter,here is a different sample project将为您演示这一点。
https://stackoverflow.com/questions/5928067
复制相似问题