在Android中创建数字计数器的方法是什么?

Set*_*ari 8 java android opengl-es

我想创建一个上升的速度,我给它一个Android应用程序滚动计数器,我觉得是没有的Android窗口小部件,在SDK做到这一点很好,我想要一些想法应如何来完成,甚至更好的关于这个想法的开源项目.

图片示例: 滚动计数器

Rag*_*oad 5

这可能不是一个完美的答案,但至少是一个起点.折扣动画和一般的幻想,你可以通过用一些花哨的XML装饰TextView来获得大部分的方式.我将分享几年前我做的事情,为小费计算器制作一个外观相似的屏幕区域:

这是XML.每个数字都是一个TextView,因此您可以单独更改它们.我在这里展示了两个,但显然下面的截图有5个.

 <TextView
    android:id="@+id/tv1"
    android:layout_width="60dip" 
    android:layout_height="140dip"
    android:background="@drawable/gradient"
    android:textSize="64sp"
    android:gravity="center"
    android:typeface="serif"
    android:textColor="#FFFFFF"
/>
<TextView
    android:id="@+id/tv2"
    android:layout_width="60dip" 
    android:layout_height="140dip"
    android:background="@drawable/gradient"
    android:textSize="64sp"
    android:gravity="center"
    android:typeface="serif"
    android:textColor="#FFFFFF"
/>
Run Code Online (Sandbox Code Playgroud)

我创建的"drawable/gradient"作为单独的drawable文件:

<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<stroke android:width="1dip"
        android:color="#fbbb"
/>
<solid android:color="#600000"/>
<layout_margin android:layout_margin="1dip"/>
<gradient
    android:startColor="#000000"
    android:centerColor="#6D6D6D"
    android:endColor="#000000"
    android:angle="270"
/>
Run Code Online (Sandbox Code Playgroud)

这是最终结果(在线性布局内):

数字计数器


Tob*_*gel 1

我非常确定屏幕截图中的这个特定计数器对于从一个数字到下一个数字的每次转换都有一些简短的动画(大约 5 或 10 帧)。也许还有更多的东西可以显示快速过渡,而无需实际停止在具有更多模糊的特定数字处。

所以主要任务是创建图形。然后,只需在正确的时间显示正确的帧即可。