为什么我的动画与手机/平板电脑(密度)相比有所不同以及如何预防?

时间:2014-08-03 13:22:20

标签: android resolution objectanimator

当使用ObjectAnimator移动项目时,由于我的设备之间的密度差异,我会得到不同的结果。我如何才能使这些独立于密度?

ObjectAnimator anim1 = ObjectAnimator.ofFloat(clockLayout, "translationY", 0f, -80f);
                anim1.setDuration(300);

1 个答案:

答案 0 :(得分:2)

我发现的最佳方法是使用dpi添加维度:

所以在你的values dimens.xml文件中:

<dimen name="delta_y">80dp</dimen>

然后你可以通过以下方式将其变成活动中的浮动:

float deltaY = getResources().getDimensionPixelSize(R.dimen.delta_y);

ObjectAnimator.ofFloat(clockLayout, "translationY", 0f, -deltaY);