RecyclerView的父级setRotation()导致滞后

时间:2016-10-05 14:50:59

标签: android performance transformation

对于纯设计的东西,我需要在RecyclerView Parent上执行一些动画。这些动画包括Y轴上的比例和旋转。当没有填充recyclerview时,一切都还可以,但如果我添加一些元素(不是那么多)动画变得非常迟钝。我想因为在每个帧上,即使适配器中没有任何内容发生更改,recyclerview也会尝试刷新其所有视图。 这是我用来为父级设置动画的代码:

final float scale = 1 - 0.3f * slideOffset;
panel.setPivotX(0);
panel.setPivotY(panel.getHeight() / 2.0f);
panel.setScaleX(scale);
panel.setScaleY(scale);
float angle = -slideOffset * MAX_ROTATION_ANGLE;
panel.setRotationY(angle);

'面板'是我的自定义布局视图,其中包含recyclerview和其他视图,' slideOffset'是用户手指在屏幕上定义的0-1之间的浮动。

我还尝试了setHasStableIds(true);到适配器,但没有任何变化,甚至setLayerType(View.LAYER_TYPE_HARDWARE, null);都没有帮助。

0 个答案:

没有答案