我想要一个有两种颜色的进度条。有时候我想增加红色进度和一些绿色的时间。简单地说,我想将进度条分成两部分。一个绿色部分和其他红色,如果我想增加红色的进展,它会增加红色和绿色相同。请注意,进度从左侧开始。我怎样才能做到这一点。我知道我应该使用二次进展,但是如何?这是我的代码和我想要做的。Android进度条水平辅助进度颜色
final float[] roundedCorners = new float[] { 5, 5, 5, 5, 5, 5, 5, 5 };
ShapeDrawable pgDrawable = new ShapeDrawable(new RoundRectShape(
roundedCorners, null, null));
if (answer == true) {
pgDrawable.getPaint().setColor(Color.parseColor(greenColor));
Log.i("green", ": should work");
} else if (answer == false) {
pgDrawable.getPaint().setColor(Color.parseColor(redColor));
Log.i("red", ": should work");
}
ClipDrawable progress = new ClipDrawable(pgDrawable, Gravity.LEFT,
ClipDrawable.HORIZONTAL);
progressBarTotal.setProgressDrawable(progress);
progressBarTotal.setBackgroundDrawable(getResources().getDrawable(
android.R.drawable.progress_horizontal));
if (TotalPercent >= 102) {
Toast.makeText(ProcessGame.this, "Full", Toast.LENGTH_LONG).show();
} else {
progressBarTotal.setProgress(TotalPercent);
TotalPercent = (TotalPercent + 1);
}
我不想搞砸xml的东西,如果这可以在java中完成。
当选择绿色时,它将覆盖红色,并增加与红色相同的进度。 –