我有一些基本的项目装饰,这在ItemDecoration.onDrawOver
方法中绘制了一些东西。
此RecyclerView
上还设置了DefaultItemAnimator
。动画效果很好,一切都很好。除了一件事。
当用此适配器中设置的新项交换所有现有项时,将在动画运行时显示装饰。
我需要一个办法把它们藏起来。当动画结束时,它们需要显示,但在运行时,它们必须隐藏。
我尝试了以下几种方法:
public void onDrawOver(..., RecyclerView.State state) {
if(state.willRunPredictiveAnimations() || state.willRunSimpleAnimations()) {
return;
}
// else do drawing stuff here
}
但这并没有帮助。装饰只在动画的较短时间内被移除,但随后在它仍在运行时再次出现。
此外,setup还包括一个RecyclerView.Adapter
,它是hasStableIds() (如果该位很重要)。
https://stackoverflow.com/questions/29061450
复制相似问题