如标题所述。我正在尝试显示具有整个视口高度的极其复杂的布局,但我需要它可滚动,因为在它下面有一个简单的带有某些项目的recyclerview。我已经考虑过将所有内容放入多类型的recyclerview适配器中,但是上部布局的逻辑是如此复杂,以至于我认为这是不可能的。
我尝试在将NestedScrollView
设置为true的情况下使用fillViewport
,但是我仍在定义此上部布局的尺寸以及其下方的recyclerview。一切都必须在一种布局内,因为scrollview不能有多个子级,但是当我将所有内容放入linearlayout并将上部布局设置为match_parent时,它将全屏显示,直到数据加载到其下面的recyclerview中为止。然后,将这种上部布局视为wrap_content。
我不知道该如何做这样的事情。最好最好是有一种ViewGroup
,它支持滚动并在滚动时调整其下方的recyclerview的大小,但我不确定如何做到这一点。
答案 0 :(得分:1)
您需要将布局设置为以下形式:
<NestedScrollView - height:match_parent>
<LinearLayout - height:wrap_content>
<LinearLayout(topview) - height:wrap_content/>
<RecyclerView - height:wrap_content />
</LinearLayout>
</NestedScrollView>
然后以编程方式将“ topview”的高度更改为等于nestedscrollview。