Сбросить вид по умолчанию после применения заполнения - PullRequest
2 голосов
/ 27 января 2012

У меня есть представление Progressbar, в котором я применил

progressBar.setPadding (300, 0, 0, 0);

Опять же, когда я касаюсь progressBar, он должен вернуться к своему обычному виду, который был до применения заполнения для просмотра.

progressBar.setPadding (0, 0, 0, 0);

пробовал с указанным выше отступом, но вид не отражался до его первоначального размера, как это было до применения дополнения

Любое предложение, как этого добиться.

Ответы [ 3 ]

1 голос
/ 27 января 2012

Вы предполагаете, что заполнение было нулевым со всех сторон, прежде чем вы его отрегулировали. Возможно, было бы лучше сохранить существующие значения отступов, прежде чем настраивать их, чтобы вы могли вернуться назад, т. Е .:

int mLeft, mTop, mRight, mBottom;

if(isFirstPeriodEmpty) {
    mLeft = smsProgressBar.getPaddingLeft();
    mTop = smsProgressBar.getPaddingTop();
    mRight = smsProgressBar.getPaddingRight();
    mBottom = smsProgressBar.getPaddingBottom();

   smsProgressBar.setPadding(300, 0, 0, 0);
} else {
   //Reset padding values
   smsProgessBar.setPadding(mLeft, mTop, mRight, mBottom);
}

НТН

0 голосов
/ 27 января 2012

Вы можете попытаться вызвать invalidate () после изменения его заполнения. progressBar.invalidate()

0 голосов
/ 27 января 2012

развлекаетесь с ним и создаете пользовательский индикатор выполнения под названием ToggleProgressBar, который переключается между двумя уровнями заполнения?или просто установить обратно обратно к старому значению?

...