如何解决如何捕获ListActivity的Listeview项目的长按事件?
| 假设我有一个ListActivity,现在我想捕捉一个列表项上的长按事件,因为我使用了以下代码块(在googled之后获取),但是它不起作用!请帮忙! public class InboxActivity extends ListActivity {
this.getListView().setOnLongClickListener(new OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
Toast.makeText(InboxActivity.this,\"postion: \" + getListView().getSelectedItemPosition(),Toast.LENGTH_SHORT).show();
return true;
}
});
}
我也可以使用contextmenu在网上看到一些代码,但是我没有从上下文菜单打开的地方获取listItem位置的方法。
解决方法
我不知道您是否已经解决了您的问题,我几乎确定您已经做到了,但这是可行的
this.getListView().setLongClickable(true);
this.getListView().setOnItemLongClickListener(new OnItemLongClickListener() {
public boolean onItemLongClick(AdapterView<?> parent,View v,int position,long id) {
//Do some
return true;
}
});
,this.getListView().setOnItemLongClickListener
应该起作用。
, (viewitem).setOnLongClickListener(new OnItemLongClickListener() {
@Override
public boolean onLongClick(View v) {
//your code here
return false;
}
}
(这与上面的答案有些不同)
,我认为您想知道如何获得价值。
listView.setOnItemLongClickListener(new OnItemLongClickListener() {
public boolean onItemLongClick(AdapterView parentView,View childView,long id) {
// this will provide the value
listView.getItemAtPosition(position)
return false;
}
})
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。