I have a custom seek bar. I want to progress animate in seek bar. I also progress thumb image but progress bar not. Thumb and progress values are different. How can I progress animate?
seekbarElectra.setMax((int) totalSpanElectra);
seekbarElectra.setProgress((int) thumbPositionElectra);
progressItemListElectra = new ArrayList<ProgressItem>();
// green span
mProgressItemElectra = new ProgressItem();
mProgressItemElectra.progressItemPercentage = (greenSpanElectra / totalSpanElectra) * 100;
mProgressItemElectra.color = R.color.green;
progressItemListElectra.add(mProgressItemElectra);
// greyspan
mProgressItemElectra = new ProgressItem();
mProgressItemElectra.progressItemPercentage = (darkGreySpanElectra / totalSpanElectra) * 100;
mProgressItemElectra.color = R.color.colorgray;
progressItemListElectra.add(mProgressItemElectra);
seekbarElectra.initData(progressItemListElectra);
seekbarElectra.invalidate();
}
---------------------------custom seekbar------------
if (mProgressItemsList.size() > 0) {
int progressBarWidth = getWidth();
int progressBarHeight = getHeight();
int thumboffset = getThumbOffset();
int lastProgressX = 0;
int progressItemWidth, progressItemRight;
for (int i = 0; i < mProgressItemsList.size(); i++) {
ProgressItem progressItem = mProgressItemsList.get(i);
Paint progressPaint = new Paint();
progressPaint.setColor(getResources().getColor(progressItem.color));
progressItemWidth = (int) (progressItem.progressItemPercentage * progressBarWidth / 100);
progressItemRight = lastProgressX + progressItemWidth;
// for last item give right to progress item to the width
if (i == mProgressItemsList.size() - 1 && progressItemRight != progressBarWidth) {
progressItemRight = progressBarWidth;
}
Rect progressRect = new Rect();
progressRect.set(lastProgressX, thumboffset / 2,progressItemRight, progressBarHeight - thumboffset / 2);
canvas.drawRect(progressRect, progressPaint);
lastProgressX = progressItemRight;
}
super.onDraw(canvas);
}
}