圆形进度条(用于倒数计时器)

大卫·贝兹

好的,我有一个15秒的倒数计时器,可以很好地工作,我想为该计时器制作一个自定义的循环进度栏。

我想创建一个完整的圆圈,使它随着计时器的下降而取出“馅饼(圆圈)的切片”,直到不再有圆圈为止。

我希望自己制作形状而不是使用预制图像,因为我希望在任何手机上都能保持良好的质量。我将如何处理?谢谢!

ance素

我发现这个示例非常好:http : //mrigaen.blogspot.it/2013/12/create-circular-progress-bar-in-android.html

所以我以这种方式创建了进度条

<ProgressBar
    android:id="@+id/barTimer"
    style="?android:attr/progressBarStyleHorizontal"
    android:layout_width="200dp"
    android:layout_height="200dp"
    android:layout_centerInParent="true"
    android:progressDrawable="@drawable/circular_progress_bar" />

然后,我为倒计时创建了一个函数,其中:

private void startTimer(final int minuti) {
    countDownTimer = new CountDownTimer(60 * minuti * 1000, 500) {
        // 500 means, onTick function will be called at every 500 milliseconds

        @Override
        public void onTick(long leftTimeInMilliseconds) {
            long seconds = leftTimeInMilliseconds / 1000;
            int barVal= (barMax) - ((int)(seconds/60*100)+(int)(seconds%60));
            barTimer.setProgress(barVal);
            textTimer.setText(String.format("%02d", seconds/60) + ":" + String.format("%02d", seconds%60));
            // format the textview to show the easily readable format

        }
        @Override
        public void onFinish() {
            if(textTimer.getText().equals("00:00")){
                textTimer.setText("STOP");          
            }
            else{
                textTimer.setText("2:00");
            }
        }
    }.start();

}

更新

private void startTimer(final int minuti) {
    countDownTimer = new CountDownTimer(60 * minuti * 1000, 500) {
        // 500 means, onTick function will be called at every 500 milliseconds

        @Override
        public void onTick(long leftTimeInMilliseconds) {
            long seconds = leftTimeInMilliseconds / 1000;
            barTimer.setProgress((int)seconds);
            textTimer.setText(String.format("%02d", seconds/60) + ":" + String.format("%02d", seconds%60));
            // format the textview to show the easily readable format

        }
        @Override
        public void onFinish() {
            if(textTimer.getText().equals("00:00")){
                textTimer.setText("STOP"); 
            }
            else{
                textTimer.setText("2:00");
                barTimer.setProgress(60*minuti);
            }
        }
    }.start();

}  

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Bootstrap的进度条作为倒数计时器

来自分类Dev

使用Bootstrap的进度条作为倒数计时器

来自分类Dev

同步倒数计时器和进度条

来自分类Dev

Android倒数计时器循环进度条与计时器不匹配

来自分类Dev

引导进度条计时器

来自分类Dev

您如何根据相对时间制作倒数计时器/进度条?

来自分类Dev

如何创建一个看起来像计时器的圆形进度条?

来自分类Dev

Android是否有进度条/计时器?

来自分类Dev

进度条计时器暂停时钟

来自分类Dev

带有进度条C#的计时器倒计时

来自分类Dev

如何使用滑动条将计时器分页替换为进度条

来自分类Dev

如何在javascript中的bootstrap进度条中添加计时器

来自分类Dev

将 Edittext 用于倒数计时器

来自分类Dev

jQuery进度栏样式倒数计时器

来自分类Dev

水平进度条与圆形指示器android

来自分类Dev

如何制作可与计时器一起使用的交互式倒退进度条?

来自分类Dev

AS 3 Flash倒数计时器,用于游戏画面显示

来自分类常见问题

日期倒数计时器

来自分类Dev

xPages倒数计时器

来自分类Dev

使用倒数计时器

来自分类Dev

流星:倒数计时器

来自分类Dev

Ruby倒数计时器

来自分类Dev

倒数计时器通知

来自分类Dev

TimeSpan倒数计时器

来自分类Dev

倒数计时器问题

来自分类Dev

AVR倒数计时器

来自分类Dev

显示倒数计时器

来自分类Dev

使颤抖的倒数计时器

来自分类Dev

Javascript计时器倒数