gpt4 book ai didi

Android TextView 动画无限重复不起作用

转载 作者:太空宇宙 更新时间:2023-11-03 13:50:01 24 4
gpt4 key购买 nike

我正在尝试无限地为我的 TextView 设置动画。我已经编写了 sequential.xml,它定义了如下所示的动画效果:

<set xmlns:android="http://schemas.android.com/apk/res/android"
android:fillAfter="true"
android:interpolator="@android:anim/linear_interpolator" >


<!-- Move -->
<translate
android:duration="800"
android:fillAfter="true"
android:fromXDelta="0%p"
android:startOffset="300"
android:toXDelta="2%p" />

<translate
android:duration="800"
android:fillAfter="true"
android:fromXDelta="0%p"
android:startOffset="1900"
android:toXDelta="-2%p" />

</set>

将此动画分配给 TextView 的 Activity 代码如下:

TextView tv = new TextView(this);
tv.setText(customObject.getText());
Animation animSequential;
animSequential = AnimationUtils.loadAnimation(getApplicationContext(),R.anim.sequential_horizontal);
animSequential.setRepeatMode(Animation.RESTART);
animSequential.setRepeatCount(Animation.INFINITE);
tv.startAnimation(animSequential);

但它并没有重复动画,而是在第一次迭代结束时停止了。如果我有任何错误,请告诉我。

最佳答案

在 XML 代码中试试这个。 Java代码不起作用,我用这个很好地解决了它。只需在您的代码中应用它:

<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false" >

<rotate
android:fromDegrees="0"
android:pivotX="50%"
android:pivotY="50%"
android:toDegrees="360"
android:duration="1000"
android:repeatCount="infinite"
android:repeatMode="restart"/>

</set>

添加最后两行<rotate>在你的代码里面。在您的情况下,在两个组件内 <translate>并删除等效的 Java 代码:

animation.setRepeatMode(Animation.INFINITE);
animation.setRepeatCount(Animation.INFINITE);

如果有人服务,此代码将使对象无限期地自行旋转。

祝你好运!

关于Android TextView 动画无限重复不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36268901/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com