1. 概述
在开发过程中,有时候会因为某种原因需要 禁止ListView或者RecyclerView的滑动事件,比如显示多类型布局时,如果其中需要加载 lv或者rv 的列表,这个时候,为了页面美观程度,其实是可以禁止 lv或者rv 的滑动事件的,直接让整体的多种类型布局滑动即可,不要让单个 lv或者rv 滑动。
2. 实现方式
1>:ListView禁止滑动实现:
拦截 listview的 onTouch()事件即可,即就是让 Action_Move返回true即可;
lv.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View view, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_MOVE:
return true;
default:
break;
}
return true;
}
});`
2>:RecyclerView禁止滑动实现:
recyclerView = (RecyclerView) findViewById(R.id.recycler_view);
//设置布局管理器
recyclerView.setLayoutManager(new LinearLayoutManager(this));
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(MainActivity.this,
LinearLayoutManager.VERTICAL, false) {
@Override
public boolean canScrollVertically() {
return false;
}
};
recyclerView.setLayoutManager(linearLayoutManager);
adapter = new RecyclerAdapter(this,picList,channelList,girlList,normalList);
recyclerView.setAdapter(adapter);
网友评论