这是关于使用Android Transition API的问题。
我正在尝试动画列表的高度变化,就像下拉菜单一样。
我尝试了两种方法
RecyclerView
并设置其高度变化动画ScrollView
> LinearLayout
层次结构和动画ScrollView
的高度。第二种方法非常有效 但是第一种方法有一个严重的故障 - 当崩溃过渡开始时,物品会立即消失。
通过查看以下GIF,您可以清楚地看到差异:
确切地说,物品'我改变RecyclerView的LayoutParams时的可见性变化,无需等待转换完成,无论它正在扩展还是折叠
我创建了一个minimal project on Github 如果您只想查看代码,请参阅MainActivity。
ScrollView
获得RecyclerView
效果?答案 0 :(得分:0)
我的想法是单独转换所有回收者视图行而不是整个RecyclerView:
因此,当折叠迭代RecyclerView
的每个ROW并进行转换时。请务必检查null
,如果某些行被回收,则可能会返回null
。所以在那之后崩溃整个recyclerView。
对于扩展而言,同样明智的做法也是如此。
这个问题是由于RecyclerView有很多视图,但Scroll View只有一个View
嵌套在其中。