Fix[UI]: progressbar text is properly padded

This commit is contained in:
Mathias Boulay 2023-08-14 13:13:07 +02:00
parent 0ce8e890de
commit 30cd5d6c4d

View File

@ -46,7 +46,7 @@ public class TextProgressBar extends ProgressBar {
protected synchronized void onDraw(Canvas canvas) { protected synchronized void onDraw(Canvas canvas) {
super.onDraw(canvas); super.onDraw(canvas);
mTextPaint.setTextSize((float) ((getHeight()- getPaddingBottom() - getPaddingTop()) * 0.55)); mTextPaint.setTextSize((float) ((getHeight()- getPaddingBottom() - getPaddingTop()) * 0.55));
int xPos = (int) Math.max(Math.min(getProgress() * getWidth() / getMax(), getWidth() - mTextPaint.measureText(mText)) - mTextPadding, mTextPadding); int xPos = (int) Math.max(Math.min((getProgress() * getWidth() / getMax()) + mTextPadding, getWidth() - mTextPaint.measureText(mText) - mTextPadding) , mTextPadding);
int yPos = (int) ((getHeight() / 2) - ((mTextPaint.descent() + mTextPaint.ascent()) / 2)) ; int yPos = (int) ((getHeight() / 2) - ((mTextPaint.descent() + mTextPaint.ascent()) / 2)) ;
canvas.drawText(mText, xPos, yPos, mTextPaint); canvas.drawText(mText, xPos, yPos, mTextPaint);