我正在实现嵌套的recyleview,我的视图包含两个recylerview,并且两个都必须按照实现方式垂直滚动,但是当我开始滚动子recylerview然后父recylerview开始滚动时我遇到了问题。
我需要什么,当我滚动子回收视图然后父回收不应滚动,当我开始父回收滚动然后孩子不应滚动。
我的父回收是白色框,其中包含订单ID 997,然后是996,依此类推。
我的孩子回收是重复按钮下方的框,包含和订单ID 997的项目是金牛座2518-10 chakka,金牛座3118 - 12 chakka和这两个下面还有三个我们无法看到的四个项目,用户向上滚动时可以看到。
我曾尝试过:
在父版面上:
pip install -e git+git://github.com/django/django-formtools#egg=django-formtools
OnChildLayout:
materialRecylerAdapter = new MaterialRecylerAdapter(getActivity(), (ArrayList<OrderPogo>) myOrderArrayList,nextFragmentFlag);
WrappingLinearLayoutManager mLayoutManager= new WrappingLinearLayoutManager(getContext(),LinearLayoutManager.VERTICAL,false);
recyclerView.setLayoutManager(mLayoutManager);
recyclerView.setItemAnimator(new DefaultItemAnimator());
recyclerView.setAdapter(materialRecylerAdapter);
答案 0 :(得分:0)
如果您未从ChildRecyclerView
进行设置,则希望您从父适配器的onBindViewHolder
设置onBindViewHolder
,然后请从onBindViewHolder
进行设置。
像这样......
ParentAdapter onBindViewHolder
@Override
public void onBindViewHolder(final ViewHolder holder, int position) {
holder.mChildRecyclerView.setLayoutManager(new LinearLayout(context));
holder.mChildRecyclerView.setAnimation(null);
//scroll vertically
holder.mChildRecyclerView.setNestedScrollingEnabled(false);
ChildAdapter childAdapter = new ChildAdapter(context);
//setter Method of ChildAdapter to set Data
childAdapter.setList(parentDataList.get(position).getChildList());
//set childAdapter
holder.mChildRecyclerView.setAdapter(childAdapter);
}
这就是我设置ChildAdapter的方法。希望也和你合作。
答案 1 :(得分:0)
禁用RecyclerView
的嵌套滚动。
recyclerView.setNestedScrollingEnabled(false);