gpt4 book ai didi

java - 如何在 Android Studio 中为数字计数器制作动画?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:36:08 25 4
gpt4 key购买 nike

我正在开发一个基本计数器,它将显示 1 到 999,999 之间的数字。在 ButtononClick 之后, View 应该更新,但我不知道如何制作这样的动画(参见图片)。

Animation desired

我对动画一无所知,我能找到的类似的东西是这样的:

You can use the ViewAnimator class to add animations to your counter. Its easy to use. You can extend it, add all the digit textviews in onCreate(). Implement a method increment that handles the increment operation. Just call showNext to flip to the next view.

虽然上面描述的似乎准确描述了我需要的东西,但我不知道如何制作它,因为我从未编写过任何动画代码。

我有 6 个 TextView,一个挨着另一个,每个显示一个数字。 问题本身是:

  • 我怎样才能实现这个动画?

TextView 示例

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_horizontal_margin"
android:orientation="horizontal"
android:gravity="center">

//This is a sample, consider 5 identical TextViews
<TextView
android:id="@+id/digit0"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="4dp"
android:text="@string/_0"
android:textSize="64sp"
android:textColor="#ffffff"
android:background="@drawable/gradient_number"
android:gravity="center"/>

</LinearLayout>

MainActivity 截图

MainActivity Screenshot

最佳答案

private void startCountAnimation() {
ValueAnimator animator = ValueAnimator.ofInt(0, 600); //0 is min number, 600 is max number
animator.setDuration(5000); //Duration is in milliseconds
animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
public void onAnimationUpdate(ValueAnimator animation) {
textView.setText(animation.getAnimatedValue().toString());
}
});
animator.start();
}

示例代码来自:How to implement increasing number animation from 0 to 600 in 5 secs on TextVIew on android

关于java - 如何在 Android Studio 中为数字计数器制作动画?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42183511/

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