java – 创建分段进度条的最佳方法?

前端之家收集整理的这篇文章主要介绍了java – 创建分段进度条的最佳方法?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在构建一个 Android应用程序,我想创建一个非常类似于MIUI文件资源管理器底部的进度条

据我所知,没有完全明显的解决方案.
到目前为止,我能想到的是

>将具有透明背景的许多进度条分层放在一起
>扩展Progress bar类以获取多个值并重写onDraw方法

我认为第一种选择太慢而且效率低,但第二种选择可能过于复杂但绝对是更好的解决方案.

有没有更好的方法解决这个问题?

解决方法

你应该为它做一个自定义视图.例:
final Paint blue = new Paint();
blue.setColor(Color.BLUE);

View progressBar = new View(getActivity()){

        protected void onDraw(android.graphics.Canvas canvas) {

            canvas.drawRect(0,getWidth()*progressPecentFirst,getHeight(),blue);
            blue.setColor(Color.RED);
            canvas.drawRect(0,getWidth()*progressPecentSecond,blue);
            //Repeat this
        };
    };
parentLayout.addView(progressBar);

猜你在找的Java相关文章