根据视图焦点或滚动在 ContraintLayout 内折叠布局
Collapse Layout inside ContraintLayout based on view focus or scroll
我正在研究 CoordinatorLayout
和 ConstraintLayout
,我想知道是否有可能实现以下目标:
如您所见,我的布局有:
- 不受此影响的工具栏。工具栏位于主 activity 上,并且未更改。
- 工具栏下方有一个加载了其布局的片段。该布局在顶部包含一个
ImageView
,一些 EditTexts
和一个 RecyclerView
行为:
- 当用户点击红色的 EditText 时,我希望布局向上滚动,以便聚焦的 EditText 位于屏幕顶部,
RecyclerView
在其下方。
- 用户可以随时向下滚动并显示初始布局。
我的问题是:创建此动画和行为的最佳方式是什么?
我设法通过在布局中使用获得了所需的行为:
<CoordinatorLayout>
<AppBarLayout>
<CollapsingToolbarLayout
app:layout_scrollFlags="scroll|exitUntilCollapsed|snap">
<My layout that will get scrolled to the top and be hidden>
</CollapsingToolbarLayout>
<RedEditText which will scroll up until the CollapsingToolbar is collapsed>
</AppBarLayout>
<RecyclerView/>
</CoordinatorLayout>
我正在研究 CoordinatorLayout
和 ConstraintLayout
,我想知道是否有可能实现以下目标:
如您所见,我的布局有:
- 不受此影响的工具栏。工具栏位于主 activity 上,并且未更改。
- 工具栏下方有一个加载了其布局的片段。该布局在顶部包含一个
ImageView
,一些EditTexts
和一个RecyclerView
行为:
- 当用户点击红色的 EditText 时,我希望布局向上滚动,以便聚焦的 EditText 位于屏幕顶部,
RecyclerView
在其下方。 - 用户可以随时向下滚动并显示初始布局。
我的问题是:创建此动画和行为的最佳方式是什么?
我设法通过在布局中使用获得了所需的行为:
<CoordinatorLayout>
<AppBarLayout>
<CollapsingToolbarLayout
app:layout_scrollFlags="scroll|exitUntilCollapsed|snap">
<My layout that will get scrolled to the top and be hidden>
</CollapsingToolbarLayout>
<RedEditText which will scroll up until the CollapsingToolbar is collapsed>
</AppBarLayout>
<RecyclerView/>
</CoordinatorLayout>