首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在项目动画持续时间内禁用RecyclerView项目装饰绘图

如何在项目动画持续时间内禁用RecyclerView项目装饰绘图
EN

Stack Overflow用户
提问于 2015-03-15 21:59:34
回答 3查看 10.4K关注 0票数 23

我有一些基本的项目装饰,这在ItemDecoration.onDrawOver方法中绘制了一些东西。

RecyclerView上还设置了DefaultItemAnimator。动画效果很好,一切都很好。除了一件事。

当用此适配器中设置的新项交换所有现有项时,将在动画运行时显示装饰。

我需要一个办法把它们藏起来。当动画结束时,它们需要显示,但在运行时,它们必须隐藏。

我尝试了以下几种方法:

代码语言:javascript
复制
public void onDrawOver(..., RecyclerView.State state) {
    if(state.willRunPredictiveAnimations() || state.willRunSimpleAnimations()) {
        return;
    }
    // else do drawing stuff here
}

但这并没有帮助。装饰只在动画的较短时间内被移除,但随后在它仍在运行时再次出现。

此外,setup还包括一个RecyclerView.Adapter,它是hasStableIds() (如果该位很重要)。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29061450

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档