Android:如何在向内部充气RecyclerView时防止Fragment事务出现滞后或动画跳过?

问题描述 投票:1回答:1

我正在处理一些片段,但是从一个切换到另一个时的过渡动画非常缓慢,有时甚至会跳过整个动画(我读过,这有时是片段性能不佳的结果。]]

非常有趣的是,使用在计算线程上设置的协程,该片段中的所有数据获取和计算都是完全异步完成的。并且包含数据的数组列表甚至不长或具有许多参数。我在UI thead上做的唯一一件事就是在RecyclerView Adapter上设置最终列表,然后notifyDataSetChanged()->就这样!因此,我的结论是,ViewHolder通胀本身就是造成滞后的原因。 ViewHolders的布局XML也非常精巧(可绘制的分辨率和三个字符串)。

关于片段事务,我在FrameLayout中用新片段替换了当前片段,并使用一组自定义的XML对象动画制作器进行提交。

我已经看到一些回答,说我应该将适配器上的项目的设置延迟大约2秒钟,但是,最终用户在该片段中导航并在白屏上等待2秒钟看起来真的很糟糕。在数据突然显示之前。我想要平滑的60fps过渡到新片段,并已显示数据。

这个东西在Android上甚至可能吗?我不是苹果迷,但是就动画的流畅性和流畅性而言,iOS设备在这个问题上破坏了Android的混乱。

我需要各种建议甚至示例,以向我展示如何解决此问题。

谢谢!

我正在处理一些片段,但是从一个切换到另一个时的过渡动画非常缓慢,有时甚至会跳过整个动画(我读过的动画有时是一个...

android animation fragment fragmentmanager fragmenttransaction
1个回答
0
投票

[尝试在添加/替换片段时添加一个startOffset(如300ms),片段将从背景中预加载,在300ms之后,应用程序将运行动画以流畅地显示您的片段。

© www.soinside.com 2019 - 2024. All rights reserved.