仿Keep运动休息倒计时控件,供大家参考,具体内容如下
源码
控件本身非常非常简单,唯一难点在于倒计时期间动态增减时长,如果说动态增减时长是瞬间完成的,倒也没什么难度,但是如果是需要花一定时间做动画的话(见效果图),考虑的逻辑就变多了,这也是我写这个的目的,对应源码中就是plus这个方法。地址: KeepCountdownView
效果
使用方法
xml:
1
2
3
4
5
6
7
8
|
< com.KeepCountdownView.KeepCountdownView android:id = "@+id/keep1" android:layout_width = "wrap_content" android:layout_height = "wrap_content" //各种可选属性 app:arcColor = "#FB5858" app:numColor = "#7CB4EF" app:XXX/> |
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
@Override protected void onCreate( @Nullable Bundle savedInstanceState) { super .onCreate(savedInstanceState); setContentView(R.layout.keep_act); ButterKnife.bind( this ); //倒计时监听 keep1.setCountdownListener( new KeepCountdownView.CountdownListener() { @Override public void onStart() { } @Override public void onEnd() { } }); } @OnClick (R.id.b1) public void b1(View v) { keep1.plus( 5 ); //增加5s } @OnClick (R.id.b2) public void b2() { keep1.post( new Runnable() { @Override public void run() { keep1.startCountDown(); //开始倒计时 } }); } @OnClick (R.id.b4) public void b4() { keep1.reset(); //重置 } |
可选属性
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/ccy0122/article/details/88016530