在片段中,我在RecyclerView
的{{1}}上设置了布局管理器: -
onActivityCreated
然后我执行galleryRecView.setLayoutManager(new LinearLayoutManager(getActivity()));
,下载要在RecyclerView中设置的数据。
现在我在RecyclerView上设置了适配器: -
AsyncTask
问题: -
public void onPhotosURLsReceived(boolean success) {
if (success && isAdded())
galleryRecView.setAdapter(new GalleryAdapter(getActivity(), Constants.photosList));
}
' RecyclerView
设置为layout_height
。所以在启动时,当RecyclerView上没有设置适配器时,它的高度为0dp。当我在AsyncTask结束后设置适配器时,它仍然保持在0dp,没有任何东西可以看到。这对wrap_content
来说绝不是问题。
注意: -
我得到此列表后,我计划将其转换为非滚动的RecyclerView,以便在ListView
和scrollView
内使用swipeLayout
并覆盖RecyclerView
像这样: -
onMeasure
答案 0 :(得分:2)
原来RecyclerView
内的ScrollView
是个问题。
我删除了ScrollView,并通过覆盖getItemViewType(int position)
将RecyclerView内部的内容作为另一种视图类型放入RecyclerView内。
这不仅解决了问题,还摆脱了对非滚动RecyclerView的需求。非滚动的RecyclerView不会回收视图,它的目的也会失败。