Евг*_*цов 7 android android-recyclerview
我在ConstraintLayout中有一个水平方向的RecyclerView作为它的直接子节点.Recycler匹配父母的widht,并根据项目的视图高度设置其高度.问题 - Recycler无法根据项目的视图高度增加或减少其高度.
例如,屏幕开始处的3个可见项目具有类似的100dp高度.接下来,我滚动 - 并看到200 dp高度项目.它将部分冷杉100dp窗口,用户将看不到所有内容.
有没有人面对这个问题?
小智 10
也许您应该使用 LinearLayoutManager 设置禁用测量缓存并在滚动后请求布局。
LinearLayoutManager layoutManager = new LinearLayoutManager(context, LinearLayoutManager.HORIZONTAL, false);
layoutManager.setMeasurementCacheEnabled(false);
YourRecyclerView.setLayoutManager(layoutManager);
YourRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
layoutManager.requestLayout();
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
373 次 |
| 最近记录: |