首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在listview上实现长点击监听器

如何在listview上实现长点击监听器
EN

Stack Overflow用户
提问于 2012-01-13 14:19:26
回答 8查看 235.5K关注 0票数 156

我想在我的列表视图中添加OnLongClickListener。每当用户长按list中的项时,都应该执行一些操作,但我的代码没有捕捉到这个侦听器。请告诉我哪里出错了。类似的代码可以很好地用于setOnItemClickListener

代码如下:

listView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {

            public boolean onItemLongClick(AdapterView<?> arg0, View v,
                    int index, long arg3) {
                // TODO Auto-generated method stub
                 Log.d("in onLongClick");
                 String str=listView.getItemAtPosition(index).toString();

                 Log.d("long click : " +str);
                return true;
            }
}); 
EN

回答 8

Stack Overflow用户

发布于 2013-01-07 20:57:47

或者尝试以下代码:

listView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {

            public boolean onItemLongClick(AdapterView<?> arg0, View v,
                    int index, long arg3) {

    Toast.makeText(list.this,myList.getItemAtPosition(index).toString(), Toast.LENGTH_LONG).show();
                return false;
            }
}); 
票数 15
EN

Stack Overflow用户

发布于 2012-01-13 14:24:24

我认为上面的代码将在LongClicking列表视图上工作,而不是单独的项目。

为什么不使用registerForContextMenu(listView)。然后在OnCreateContextMenu中获取回调。

对于大多数用例,这都是一样的。

票数 6
EN

Stack Overflow用户

发布于 2018-04-15 13:46:40

在xml中添加

<ListView android:longClickable="true">

在java文件中

lv.setLongClickable(true) 

试试这个setOnItemLongClickListener()

lv.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
            @Override
            public boolean onItemLongClick(AdapterView<?> adapterView, View view, int pos, long l) {
                //final String category = "Position at : "+pos;
                final String category = ((TextView) view.findViewById(R.id.textView)).getText().toString();
                Toast.makeText(getActivity(),""+category,Toast.LENGTH_LONG).show();
                args = new Bundle();
                args.putString("category", category);
                return false;
            }
        });
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8846707

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档