Skip to content

linux-liu/LoadView

Repository files navigation

LoadView

一个带进度圆形进度条 效果图如下:
效果图
###用法 直接调用setPercent方法设置进度即可,如下代码模拟下载

 public void downLoad(View view) {

   new TimeDown(12*1000,1000).start();

    }

    private class TimeDown extends CountDownTimer{

        private float i=0;
        /**
         * @param millisInFuture    The number of millis in the future from the call
         *                          to {@link #start()} until the countdown is done and {@link #onFinish()}
         *                          is called.
         * @param countDownInterval The interval along the way to receive
         *                          {@link #onTick(long)} callbacks.
         */
        public TimeDown(long millisInFuture, long countDownInterval) {
            super(millisInFuture, countDownInterval);
            i=0;
            loadView.setPercent(0);
        }

        @Override
        public void onTick(long millisUntilFinished) {
            Log.i("lx","onTick"+millisUntilFinished);
            loadView.setPercent(i);
            i=i+0.083333f;
        }

        @Override
        public void onFinish() {
           loadView.setPercent(1f);
        }
    }

支持自定义参数如下:

    <declare-styleable name="LoadView">
        <!-- 已经load的颜色值-->
        <attr name="HasLoadColor" format="color" />
        <!-- 没有load的颜色值-->
        <attr name="NormalLoadColor" format="color" />
        <!-- 小长方形的宽度-->
        <attr name="RectangleWidth" format="dimension" />
        <!-- 小长方形的高度-->
        <attr name="RectangleHeight" format="dimension" />
        <!-- 小长方形的个数-->
        <attr name="RectangleNum" format="integer" />
        <!-- 内半径大小-->
        <attr name="InnerRadius" format="dimension" />
        <!-- 文字大小-->
        <attr name="TextSize" format="dimension" />
        <!-- 小长方形圆角度-->
        <attr name="RectangleRadius" format="dimension" />
    </declare-styleable>

###其他
带进度的圆形进度条的实现

Releases

No releases published

Packages

No packages published

Languages