开源项目PullToRefreshListView,对于需要上下拉列表刷新,很方便,网上教程很多。https://github.com/chrisbanes/Android-PullToRefresh
导入目录里的library项目到workspace里。作为lib引用到自己项目里,就可以用这个啦。
今天想加个item的长按效果,没有找到ListView该有的setOnItemLongClickListener()。纠结迷茫了一会儿。
解决方法:
打开PullToRefreshListView这个类所继承的抽象类:PullToRefreshAdapterViewBase<T extends AbsListView> extends PullToRefreshBase<T> implements OnScrollListener
自己添加了一个方法:
public void setOnItemLongClickListener(OnItemLongClickListener listener){
mRefreshableView.setOnItemLongClickListener(listener);
}
就ok啦。 之后就像原本ListVIew的用法一样了。
pullListView.setOnItemLongClickListener(new OnItemLongClickListener(){
@Override
public boolean onItemLongClick(AdapterView<?> arg0, View arg1, int position, long arg3) {
// TODO Auto-generated method stub
Toast.makeText(mContext, "长按了item="+position, Toast.LENGTH_LONG).show();
return true; //不触发短点击效果
}
});
顺便提一句:返回的true表示长按之后不会触发短点击事件;false则是会在长按之后触发短点击事件