动态设置动画xml值

时间:2014-08-29 08:55:12

标签: android fragmenttransaction objectanimator

我正在开发一款基于回合制的游戏,并且有2个游戏板,当我想在2个游戏板之间切换时,我使用滑动动画。但问题来了。 我有4个动画xml文件,右,右,左,左,左。 这是其中之一:

<objectAnimator
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="1000"
    android:propertyName="x"
    android:valueFrom="1000"
    android:valueTo="0"
    android:valueType="floatType" />

滑动工作正常,但我在1280px高度的模拟器上测试此游戏(游戏以横向模式运行), 在幻灯片的末尾,有一个280px宽的部分,它不会滑动,只是隐藏在滑动动画的末尾。 当我将valuefrom值设置为2000时,它会更好,因为两块板不会褪色另一块,但在这种情况下,有一个720像素宽的黑色区域。

您知道吗,如何根据实际屏幕尺寸动态设置这些值? 感谢。

1 个答案:

答案 0 :(得分:1)

使用ObjectAnimator的保理方法。

示例:

ObjectAnimator anim = ObjectAnimator.ofFloat(targetObject, "x", 0.f, 1000.f);
anim.setDuration(300);
anim.start();

您可以使用

等代码以编程方式获取视图的显示或大小的指标
getWindowManager().getDefaultDisplay().getWidth();

View view = ...;
view.getHeight();

请参阅:

相关问题