2色のプログレスバーが欲しいです。そして、いつか私は赤い色の進行を増やしたい、そしてある時は緑の色で増やしたい。簡単に言えば、プログレスバーを2つに分割したいと思います。1つの緑のセクションと他の赤で進行状況を赤でインクリメントしたい場合は、赤でインクリメントし、緑の場合と同じです。進行は左から始まることに注意してください。どうすればこれを達成できますか。二次進捗を使用する必要があることはわかっていますが、どのようにしたらよいですか?これが私のコードと私がやろうとしていることです。
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);
}
これがJavaで実行できるのであれば、xmlのものをいじりたくありません。